@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap";@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap";@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&family=Outfit:wght@300;400;500;600;700;800;900&display=swap";@import"https://fonts.googleapis.com/css2?family=Nunito+Sans:wght@400;600;700;800&display=swap";.counter{font-size:16px;padding:5px 10px;border-radius:5px;color:var(--accent);background:var(--accent-bg);border:2px solid transparent;transition:border-color .3s;margin-bottom:24px}.counter:hover{border-color:var(--accent-border)}.counter:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.hero{position:relative}.hero .base,.hero .framework,.hero .vite{inset-inline:0;margin:0 auto}.hero .base{width:170px;position:relative;z-index:0}.hero .framework,.hero .vite{position:absolute}.hero .framework{z-index:1;top:34px;height:28px;transform:perspective(2000px) rotate(300deg) rotateX(44deg) rotateY(39deg) scale(1.4)}.hero .vite{z-index:0;top:107px;height:26px;width:auto;transform:perspective(2000px) rotate(300deg) rotateX(40deg) rotateY(39deg) scale(.8)}#center{display:flex;flex-direction:column;gap:25px;place-content:center;place-items:center;flex-grow:1}@media (max-width: 1024px){#center{padding:32px 20px 24px;gap:18px}}#next-steps{display:flex;border-top:1px solid var(--border);text-align:left}#next-steps>div{flex:1 1 0;padding:32px}@media (max-width: 1024px){#next-steps>div{padding:24px 20px}}#next-steps .icon{margin-bottom:16px;width:22px;height:22px}@media (max-width: 1024px){#next-steps{flex-direction:column;text-align:center}}#docs{border-right:1px solid var(--border)}@media (max-width: 1024px){#docs{border-right:none;border-bottom:1px solid var(--border)}}#next-steps ul{list-style:none;padding:0;display:flex;gap:8px;margin:32px 0 0}#next-steps ul .logo{height:18px}#next-steps ul a{color:var(--text-h);font-size:16px;border-radius:6px;background:var(--social-bg);display:flex;padding:6px 12px;align-items:center;gap:8px;text-decoration:none;transition:box-shadow .3s}#next-steps ul a:hover{box-shadow:var(--shadow)}#next-steps ul a .button-icon{height:18px;width:18px}@media (max-width: 1024px){#next-steps ul{margin-top:20px;flex-wrap:wrap;justify-content:center}#next-steps ul li{flex:1 1 calc(50% - 8px)}#next-steps ul a{width:100%;justify-content:center;box-sizing:border-box}}#spacer{height:88px;border-top:1px solid var(--border)}@media (max-width: 1024px){#spacer{height:48px}}.ticks{position:relative;width:100%}.ticks:before,.ticks:after{content:"";position:absolute;top:-4.5px;border:5px solid transparent}.ticks:before{left:0;border-left-color:var(--border)}.ticks:after{right:0;border-right-color:var(--border)}@media (min-width: 768px){.md\:hidden{display:none!important}}.team-section{padding-top:140px!important;scroll-margin-top:120px}.team-section-container{max-width:1400px;margin:0 auto;padding:80px 24px}.team-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:40px;width:100%}.team-card{width:320px;max-width:100%;height:auto;min-height:auto;display:flex;flex-direction:column;position:relative;border-radius:28px;border:1px solid rgba(11,122,58,.2);background:#fffc;padding:24px 24px 20px;box-shadow:0 10px 15px -3px #0000000d,0 4px 6px -2px #00000005;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:transform .4s cubic-bezier(.16,1,.3,1),box-shadow .4s cubic-bezier(.16,1,.3,1),border-color .4s;overflow:hidden;text-decoration:none}.team-card:hover{transform:translateY(-8px);box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;border-color:#0b7a3a66}.team-image-wrapper{position:relative;width:100%;height:250px;display:flex;justify-content:center;align-items:center;overflow:hidden;border-radius:24px;background:#f8fafc;border:1px solid #f1f5f9;margin-bottom:20px}.team-image{width:170px;height:240px;object-fit:cover;border-radius:24px;transition:transform .5s ease;display:block;margin:0 auto}.team-card-content{display:flex;flex-direction:column;align-items:center;gap:14px;text-align:center}.team-name{margin-top:6px;margin-bottom:6px;line-height:1.15}.team-role{margin-bottom:18px;line-height:1.45}.team-card-footer{margin-top:8px;padding-top:0;display:flex;justify-content:center}@media (max-width: 640px){.team-section-container{padding:60px 16px}.team-grid{gap:24px}.team-card{width:100%;max-width:100%;padding:20px 18px}.team-image{width:150px;height:210px}.team-image-wrapper{height:220px}.team-name{font-size:32px}}:root{--app-header-bg: #2e7d32;--header-height: 60px}.header{display:flex;justify-content:space-between;align-items:center;padding:10px 20px;background-color:var(--app-header-bg, #2e7d32);box-shadow:0 2px 6px #0000001a;position:fixed;top:0;left:0;right:0;z-index:120001;height:var(--header-height);box-sizing:border-box;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.header-left{display:flex;align-items:center;gap:15px;flex:1;min-width:0;height:100%;max-height:var(--header-height, 60px)}.menu-toggle{background:none;border:none;color:#fff;font-size:1.5rem;cursor:pointer;padding:5px;transition:color .3s ease}.menu-toggle:hover{color:#dcedc8}.secondary-menu-toggle{background:none;border:none;color:#fff;font-size:1.3rem;cursor:pointer;padding:5px 7px;line-height:1;align-items:center;justify-content:center;transition:color .3s ease;display:none}.secondary-menu-toggle:hover{color:#dcedc8}.logo{display:flex;align-items:center;gap:10px;color:#fff;min-width:0;height:100%;max-height:100%}.institution-logo-image{max-width:120px;max-height:42px;width:auto;height:auto;object-fit:contain;border-radius:6px;border:1px solid rgba(255,255,255,.35)}.institution-logo-fallback{width:34px;height:34px;border-radius:8px;border:1px solid rgba(255,255,255,.35)}.institution-logo-fallback{display:inline-flex;align-items:center;justify-content:center;background:#ffffff2e;font-size:.85rem;font-weight:700;color:#fff;text-transform:uppercase}.institution-name-text{font-size:15px;font-weight:600;letter-spacing:.3px;max-width:340px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.role-chip{display:inline-flex;align-items:center;justify-content:center;padding:3px 8px;border-radius:999px;background:#ffffff2e;border:1px solid rgba(255,255,255,.35);font-size:11px;font-weight:700;letter-spacing:.3px;text-transform:uppercase}.header-center{flex:1;display:flex;justify-content:center;max-width:400px;position:relative}.search-container{width:100%;position:relative}.search-input{width:100%;padding:8px 12px;font-size:14px;border:none;border-radius:4px;outline:none;background-color:#fff;color:#333;box-shadow:inset 0 1px 2px #0000001a;transition:box-shadow .3s ease;box-sizing:border-box}.search-input:focus{box-shadow:inset 0 1px 2px #0003,0 0 5px #8bc34a4d}.search-dropdown{position:absolute;top:100%;left:0;right:0;background:#fff;border:1px solid #ddd;border-top:none;border-radius:0 0 8px 8px;box-shadow:0 4px 12px #00000026;max-height:400px;overflow-y:auto;z-index:1500;margin-top:1px}.search-results{padding:0;margin:0;list-style:none}.search-result-item{padding:12px 16px;border-bottom:1px solid #f0f0f0;cursor:pointer;transition:background-color .2s ease;display:flex;flex-direction:column}.search-result-item:hover{background-color:#f8f9fa}.search-result-title{font-weight:500;color:#333;margin-bottom:2px;font-size:14px}.search-result-subtitle{font-size:12px;color:#666;margin-bottom:4px}.search-result-category{font-size:11px;color:#385a12;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.search-no-results,.search-loading{padding:16px;text-align:center;color:#666;font-size:14px}.search-loading:after{content:"";display:inline-block;width:16px;height:16px;margin-left:8px;border:2px solid #f3f3f3;border-top:2px solid #385a12;border-radius:50%;animation:spin 1s linear infinite}.search-category-group{border-bottom:1px solid #e9ecef}.search-category-header{padding:8px 16px;background-color:#f8f9fa;font-size:12px;font-weight:600;color:#495057;text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid #e9ecef}.header-right{display:flex;align-items:center;gap:10px;margin-left:auto;height:100%;max-height:var(--header-height, 60px)}.Ciaan-request-bell{position:relative;width:36px;height:36px;border-radius:50%;border:none;background:#ffffff26;color:#fff;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.Ciaan-request-bell i{font-size:16px}.header-notification-badge{position:absolute;top:-4px;right:-4px;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:#ef4444;color:#fff;font-size:10px;font-weight:700;display:inline-flex;align-items:center;justify-content:center}.header-year-select-container{display:inline-flex;align-items:center;gap:8px;color:#fff;margin-right:8px}.header-year-select-container span{font-size:13px;font-weight:600;white-space:nowrap}.header-year-select{padding:6px 12px;font-size:13px;font-weight:600;border-radius:6px;border:1px solid rgba(255,255,255,.35);background-color:#ffffff26;color:#fff;cursor:pointer;outline:none;transition:border-color .2s ease,background-color .2s ease}.header-year-select:hover,.header-year-select:focus{border-color:#fff9;background-color:#ffffff40}.header-year-select option{color:#333;background-color:#fff}.user-section{position:relative}.user-button{background:none;border:none;color:#fff;font-size:15px;cursor:pointer;display:flex;align-items:center;gap:8px;padding:5px 10px;transition:background-color .3s ease}.user-button:hover{background-color:#ffffff1a;border-radius:4px}.user-icon{font-size:18px}.user-name{font-weight:500;max-width:140px;display:inline-block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;vertical-align:middle;flex-shrink:1}.user-button .user-name,.user-button:hover .user-name,.user-button:focus .user-name,.user-button:active .user-name{color:#fff!important}.dropdown-arrow,.user-button .dropdown-arrow,.user-button:hover .dropdown-arrow,.user-button:focus .dropdown-arrow,.user-button:active .dropdown-arrow{color:#fff!important;font-size:10px}.user-icon,.user-button .user-icon,.user-button:hover .user-icon,.user-button:focus .user-icon,.user-button:active .user-icon{color:#fff!important}.user-dropdown-menu{position:absolute;top:100%;right:0;background-color:#fff;color:#333;min-width:150px;border-radius:4px;box-shadow:0 2px 8px #0003;z-index:2000;margin-top:5px;animation:fadeIn .2s ease-in;display:block}.user-dropdown-menu.visible{display:block!important}.user-dropdown-menu .dropdown-item{padding:10px 15px;width:100%;background-color:transparent;border:none;text-align:left;cursor:pointer;font-size:14px;color:#333!important;display:flex;align-items:center;gap:8px}.user-dropdown-menu .dropdown-item:hover{background-color:#f0f0f0!important;color:#111827!important}.user-dropdown-menu .dropdown-item.logout{color:#dc3545!important}.user-dropdown-menu .dropdown-item.logout:hover{color:#bd2130!important}.user-dropdown-menu .dropdown-item i{font-size:14px;color:inherit!important}@media (max-width: 768px){:root{--header-height: 50px}.header{padding:8px 10px;height:var(--header-height)}.header-left{gap:8px}.header-right{gap:6px}.institution-logo-image{max-height:32px;max-width:80px}.header-center{max-width:250px}.search-input{font-size:12px;padding:6px 10px}.search-dropdown{max-height:300px}.search-result-item{padding:10px 12px}.search-result-title{font-size:13px}.search-result-subtitle{font-size:11px}.search-category-header{padding:6px 12px;font-size:11px}.logo{font-size:18px}.institution-name-text,.role-chip{display:none!important}.menu-toggle{font-size:1.3rem}.secondary-menu-toggle{display:none;font-size:1.2rem}.header.has-secondary-toggle .secondary-menu-toggle{display:inline-flex}.test-dropdown-btn{display:none!important}.user-button{font-size:14px;padding:3px 6px}.user-dropdown-menu{min-width:120px}.header-year-select-container span{display:none!important}.header-year-select{padding:5px 6px;font-size:12px;max-width:130px}.user-name{display:none!important}}@media (max-width: 480px){.header-center{max-width:200px}.search-input{font-size:11px;padding:5px 8px}.user-name,.header-year-select-container span{display:none}.header-year-select{max-width:120px}.role-chip{display:none}.institution-name-text{max-width:130px}}.profile-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#0000008c;display:flex;justify-content:center;align-items:center;z-index:220000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.profile-modal-content{background-color:#fff;border-radius:12px;width:90%;max-width:480px;box-shadow:0 8px 32px #0003;animation:modalSlideIn .3s cubic-bezier(.16,1,.3,1);overflow:hidden;font-family:inherit}@keyframes modalSlideIn{0%{transform:translateY(-20px);opacity:0}to{transform:translateY(0);opacity:1}}.profile-modal-header{padding:16px 20px;background-color:var(--app-header-bg, #2e7d32);color:#fff;display:flex;justify-content:space-between;align-items:center}.profile-modal-header h3{margin:0;font-size:1.15rem;font-weight:600}.profile-modal-close-btn{background:none;border:none;color:#fff;font-size:1.5rem;cursor:pointer;line-height:1;padding:0;opacity:.8;transition:opacity .2s}.profile-modal-close-btn:hover{opacity:1}.profile-modal-body{padding:20px 24px}.profile-form-group{margin-bottom:16px}.profile-form-group label{display:block;font-size:.85rem;font-weight:600;color:#495057;margin-bottom:6px}.profile-form-control{width:100%;padding:9px 12px;border:1px solid #ced4da;border-radius:6px;font-size:.9rem;box-sizing:border-box;color:#495057;background-color:#fff;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}.profile-form-control:focus{border-color:var(--app-header-bg, #2e7d32);outline:0;box-shadow:0 0 0 .2rem #2e7d3240}.profile-form-control:disabled{background-color:#e9ecef;opacity:1;cursor:not-allowed}.profile-photo-section{display:flex;align-items:center;gap:16px;margin-bottom:20px;background-color:#f8f9fa;padding:16px;border-radius:8px;border:1px dashed #dee2e6}.profile-preview-wrapper{position:relative;width:64px;height:64px;border-radius:50%;overflow:hidden;border:2px solid var(--app-header-bg, #2e7d32);display:flex;justify-content:center;align-items:center;background-color:#e9ecef;flex-shrink:0}.profile-preview-img{width:100%;height:100%;object-fit:cover}.profile-preview-fallback{font-size:1.8rem;color:#6c757d}.profile-photo-upload-input{display:none}.profile-photo-upload-label{background-color:var(--app-header-bg, #2e7d32);color:#fff;padding:6px 12px;font-size:.8rem;font-weight:600;border-radius:4px;cursor:pointer;transition:background-color .15s ease-in-out;display:inline-block}.profile-photo-upload-label:hover{background-color:#1b5e20}.profile-photo-info{font-size:.75rem;color:#6c757d;margin-top:4px}.profile-modal-footer{padding:16px 24px;display:flex;justify-content:flex-end;gap:12px;border-top:1px solid #dee2e6;background-color:#f8f9fa}.profile-btn-cancel{background-color:#e2e8f0;border:none;color:#475569;padding:8px 16px;font-size:.85rem;font-weight:600;border-radius:6px;cursor:pointer;transition:background-color .15s ease-in-out}.profile-btn-cancel:hover{background-color:#cbd5e1}.profile-btn-save{background-color:var(--app-header-bg, #2e7d32);border:none;color:#fff;padding:8px 16px;font-size:.85rem;font-weight:600;border-radius:6px;cursor:pointer;transition:background-color .15s ease-in-out;display:flex;align-items:center;gap:6px}.profile-btn-save:hover{background-color:#1b5e20}.profile-btn-save:disabled{background-color:#81c784;cursor:not-allowed}.profile-alert{padding:10px 14px;border-radius:6px;font-size:.85rem;margin-bottom:16px}.profile-alert-danger{background-color:#f8d7da;color:#842029;border:1px solid #f5c2c7}.profile-alert-success{background-color:#d1e7dd;color:#0f5132;border:1px solid #badbcc}.user-profile-img{width:24px;height:24px;border-radius:50%;object-fit:cover;border:1.5px solid rgba(255,255,255,.85);flex-shrink:0}.sidebar.main-sidebar{position:fixed;top:60px;left:0;width:var(--sidebar-width, 280px);height:calc(100dvh - 60px);max-height:calc(100dvh - 60px);z-index:1100;background:linear-gradient(180deg,var(--primary-color, #10b981) 0%,var(--primary-accent-dark, var(--primary-color, #059669)) 100%)!important;border-right:1px solid rgba(255,255,255,.1)!important;box-shadow:4px 0 15px #0000001a;padding:24px 16px;overflow-y:auto!important;overflow-x:hidden;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;transition:transform .3s cubic-bezier(.4,0,.2,1),opacity .3s ease-in-out;font-family:Inter,sans-serif}.sidebar.main-sidebar::-webkit-scrollbar{width:5px}.sidebar.main-sidebar{scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.2) transparent}.sidebar.main-sidebar::-webkit-scrollbar-thumb{background:#fff3;border-radius:99px}.sidebar.main-sidebar::-webkit-scrollbar-track{background:transparent}.sidebar.main-sidebar.collapsed{transform:translate(-100%);opacity:0;pointer-events:none}.sidebar.main-sidebar.visible{transform:translate(0);opacity:1}.sidebar-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0c162c59;-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);z-index:1090}.sidebar-header{display:flex;justify-content:flex-end;margin-bottom:6px}.sidebar-close-btn{width:34px;height:34px;border:1px solid rgba(255,255,255,.25);border-radius:10px;background:#ffffff1f;color:#fff!important;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease}.sidebar-close-btn:hover{background:#ffffff40;box-shadow:0 4px 10px #00000026}.sidebar-menu{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:6px}.sidebar-section-label:first-child{margin-top:0}.sidebar-item{width:100%;color:#ffffffd9!important;border-radius:10px;transition:all .2s ease;background:transparent!important}.sidebar-item>i,.sidebar-item>span{pointer-events:none}.sidebar-link-item{min-height:40px;display:flex;align-items:center;gap:12px;padding:10px 12px;cursor:pointer;font-size:.92rem;font-weight:500}.sidebar-item:hover,.dropdown-header:hover{background:#ffffff1f!important;color:#fff!important}.sidebar-item:hover i,.dropdown-header:hover i{color:#fff!important}.sidebar-item.active{background:#fff3!important;color:#fff!important;font-weight:600;box-shadow:inset 4px 0 #fff!important}.sidebar-item.active i{color:#fff!important}.sidebar-item i,.dropdown-header i:first-child,.dropdown-item i{font-size:1.1rem;color:#ffffffbf!important;width:18px;min-width:18px;text-align:center;line-height:1;transition:color .2s ease}.dropdown{width:100%}.dropdown-header{border:0!important;background:transparent!important;color:#ffffffd9!important;width:100%;min-height:40px;border-radius:10px;padding:10px 12px!important;display:flex!important;align-items:center;gap:12px;font-weight:500;font-size:.92rem;text-decoration:none;box-shadow:none!important;transition:all .2s ease}.dropdown-header:after{display:none!important}.dropdown-header.open{background:#ffffff1f!important;color:#fff!important}.dropdown-header.open i:first-child{color:#fff!important}.dropdown-header span{flex:1;text-align:left}.dropdown-chevron{margin-left:auto;font-size:.72rem!important;color:#fff9!important;transition:transform .3s ease-in-out}.dropdown-header.open .dropdown-chevron{color:#fff!important;transform:rotate(180deg)}.sidebar-notification-badge{min-width:20px;height:20px;padding:0 6px;border-radius:10px;background:#fff!important;color:var(--primary-color, #10b981)!important;font-size:.68rem;font-weight:700;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 2px 5px #00000026}.sidebar-submenu{position:static!important;transform:none!important;float:none!important;width:100%;border:0!important;border-radius:12px;background:transparent!important;box-shadow:none!important;display:block!important;padding:0 0 0 16px!important;border-left:1px dashed rgba(255,255,255,.3)!important;margin:4px 0 4px 20px!important;max-height:0;opacity:0;overflow:hidden;transition:max-height .3s ease-in-out,opacity .3s ease-in-out}.sidebar-submenu.show{max-height:2000px;opacity:1}.sidebar-submenu .dropdown-item{color:#fffc!important;opacity:.95;font-size:.86rem;font-weight:500;border-radius:8px;margin:2px 0;padding:8px 12px!important;transition:background-color .2s ease,color .2s ease,transform .2s ease;background:transparent!important}.sidebar-submenu .dropdown-item:hover{background:#ffffff1f!important;color:#fff!important;transform:translate(4px)}.sidebar-submenu .dropdown-item:hover i{color:#fff!important}.sidebar-submenu .dropdown-item.active{background:#ffffff2e!important;color:#fff!important;font-weight:600;box-shadow:inset 3px 0 #fff!important}.sidebar-submenu .dropdown-item.active i{color:#fff!important}.sidebar-submenu .dropdown-item.active-header{color:#fff!important;font-weight:600}.sidebar-submenu .dropdown-divider{margin:6px 0;border-top:1px solid rgba(255,255,255,.15)!important}.smart-attendance-link{font-weight:700;color:#fff!important}.smart-attendance-link:hover{color:#fff!important}.sidebar-submenu .msbte-subitem{padding-left:24px!important;font-size:.83rem;color:#ffffffbf!important}.sidebar-submenu .msbte-subitem:hover{color:#fff!important}@media (max-width: 1024px){.sidebar.main-sidebar{width:min(300px,86vw)}}@media (max-width: 768px){.sidebar.main-sidebar{top:0;height:100dvh;max-height:100dvh;padding-top:14px;border-right:1px solid rgba(255,255,255,.1)!important}}html,body{margin:0;padding:0;height:100%;background:linear-gradient(135deg,#f5f7fa,#c3cfe2);font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px;background:linear-gradient(135deg,#f5f7fa,#c3cfe2)}.login-container{display:flex;background:#fff;border-radius:10px;overflow:hidden;box-shadow:0 10px 40px #0000001f;max-width:820px;width:100%}.login-brand{flex:1;background:linear-gradient(135deg,var(--primary-accent, #28a745) 0%,var(--primary-accent-dark, #20c997) 100%);color:#fff;padding:40px 30px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center}.logo{height:260px;margin-bottom:18px;object-fit:contain;filter:drop-shadow(0 4px 8px rgba(0,0,0,.15));transition:transform .3s ease}.logo:hover{transform:scale(1.05)}.login-title{font-size:20px;font-weight:600;margin-bottom:8px}.subheading{font-size:13px;opacity:.9}.login-box{flex:1;padding:35px 30px;display:flex;flex-direction:column;justify-content:center}.login-form{width:100%}.form-group{margin-bottom:16px;text-align:left}.form-group label{font-weight:500;display:block;margin-bottom:4px;color:#2c3e50;font-size:13px}.form-input{width:100%;padding:10px 12px;border:1px solid #e1e8ed;border-radius:6px;background-color:#fff;font-size:13px;color:#2c3e50;transition:all .25s ease;box-sizing:border-box}.form-input:focus{border-color:var(--primary-accent, #28a745);outline:none;box-shadow:0 0 0 3px #28a7451a}.form-input:hover{border-color:#bdc3c7}.hint{font-size:11px;color:#95a5a6;margin-top:3px;font-style:italic}.remember-section{display:flex;align-items:center;justify-content:flex-start;gap:6px;margin-bottom:18px}.remember-section input[type=checkbox]{transform:scale(.95);accent-color:var(--primary-accent, #28a745)}.remember-section label{font-size:12px;color:#2c3e50;cursor:pointer}.login-button{width:100%;background:linear-gradient(135deg,var(--primary-accent, #28a745) 0%,var(--primary-accent-dark, #20c997) 100%);color:#fff;padding:11px 18px;border:none;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;transition:all .25s ease;text-transform:uppercase;letter-spacing:.5px;box-shadow:0 4px 14px #28a74540}.login-button:hover{transform:translateY(-2px);box-shadow:0 8px 24px #28a74559}.login-button:active{transform:translateY(0)}.footer-content{margin-top:20px;padding-top:12px;border-top:1px solid #ecf0f1;text-align:center;font-size:11px;color:#7f8c8d}.footer-content a{color:var(--primary-accent, #28a745);text-decoration:none;font-weight:500}.footer-content a:hover{text-decoration:underline}@media (max-width: 768px){.login-container{flex-direction:column;max-width:420px}.login-brand{padding:30px 20px}.logo{height:160px}.login-box{padding:25px 20px}}@media (max-width: 480px){.login-container{max-width:100%}.login-title{font-size:18px}.form-input{font-size:12px;padding:9px 10px}.login-button{font-size:12px;padding:10px 14px}}.two-factor-fadein{animation:fadeIn .4s ease-out}.two-factor-header{margin-bottom:24px;text-align:left}.two-factor-title{font-size:18px;color:#2c3e50;margin:0 0 8px;font-weight:600}.two-factor-subtitle{font-size:13px;color:#7f8c8d;line-height:1.5;margin:0}.two-factor-email{font-weight:600;color:var(--primary-accent, #28a745)}.otp-field{text-align:center;font-size:20px!important;letter-spacing:6px;font-weight:700;padding:12px!important;border:2px solid #e1e8ed!important}.otp-field:focus{border-color:var(--primary-accent, #28a745)!important}.two-factor-buttons{display:flex;gap:12px;margin-top:24px}.back-button{flex:1;background:#f1f2f6;color:#57606f;padding:11px 18px;border:1px solid #ced6e0;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;transition:all .25s ease;text-transform:uppercase;letter-spacing:.5px;box-sizing:border-box}.back-button:hover:not(:disabled){background:#dfe4ea;color:#2f3542;border-color:#a4b0be}.back-button:disabled,.verify-button:disabled{opacity:.6;cursor:not-allowed;transform:none!important;box-shadow:none!important}.verify-button{flex:2}:root{--card-bg: #ffffff;--primary-accent: #10b981;--primary-accent-dark: #059669;--border-color: #e2e8f0;background:linear-gradient(180deg,#f7fafc,#eef2f7);--text-color-primary: #1f2937;--text-color-secondary: #374151;--border-color: color-mix(in srgb, var(--dashboard-accent) 10%, #e2e8f0 90%);--transition-speed: .3s;--dash-blue-1: #1f63d3;--dash-blue-2: #1145a5;--dash-cyan-1: #1cb5be;--dash-cyan-2: #168ea6}.scrollable-wrapper{height:calc(100vh - 60px);overflow-y:auto;padding:1rem 1rem 1.5rem}.faculty-dashboard-shell.scrollable-wrapper{height:auto;min-height:calc(100vh - 60px);overflow-y:visible;overflow-x:hidden;padding-top:1.35rem}.faculty-dashboard-shell{background:linear-gradient(180deg,color-mix(in srgb,var(--dashboard-accent) 8%,#f7fafc 92%),color-mix(in srgb,var(--dashboard-accent) 4%,#eef2f7 96%));position:relative}.faculty-dashboard-shell:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 0% 0%,rgba(17,90,201,.1),transparent 40%),radial-gradient(circle at 100% 10%,rgba(28,181,190,.12),transparent 44%);pointer-events:none}.dashboard-hero-panel{margin:0 auto 1rem;max-width:1280px;background:linear-gradient(130deg,#f9fbff,#eff5ff 48%,#eefbfd);border:1px solid #d5e2f4;border-radius:18px;padding:1.1rem 1.35rem;display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,420px);gap:1rem;align-items:center;box-shadow:0 14px 34px #0f234b1c}.dashboard-kicker{display:inline-block;padding:.28rem .62rem;border:1px solid #c4d8f7;border-radius:999px;color:#1f4d95;background:#f4f8ff;font-size:.72rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase}.dashboard-hero-copy h2{margin:.5rem 0 0;font-size:1.55rem;font-weight:700;color:#0d2447;line-height:1.25}.dashboard-hero-copy p{margin:.45rem 0 0;color:#3f5472;font-size:.93rem}.dashboard-progress-card{background:#fff;border:1px solid #d7e3f2;border-radius:14px;padding:.9rem 1rem;box-shadow:0 8px 18px #0d224214}.dashboard-progress-head{display:flex;justify-content:space-between;align-items:center;color:#0f172a;font-weight:600;margin-bottom:.5rem}.dashboard-progress-head strong{color:#1f4fa3;font-size:1rem}.dashboard-progress-track{height:10px;width:100%;background:#e2e8f0;border-radius:999px;overflow:hidden;margin-bottom:.45rem}.dashboard-progress-fill{height:100%;background:linear-gradient(90deg,var(--dash-blue-1),var(--dash-cyan-1));border-radius:inherit;transition:width .35s ease}.dashboard-progress-meta{display:flex;flex-direction:column;gap:.2rem;font-size:.8rem;color:#475569}.analytics-grid{display:grid;max-width:1280px;margin:0 auto;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;padding:.35rem .2rem 1rem}.analytics-card{background:#fff;border:1px solid #d4e0ef;border-radius:16px;padding:1rem 1.1rem;box-shadow:0 10px 22px #0e224614;transition:transform .24s ease,box-shadow .24s ease}.analytics-card:hover{transform:translateY(-2px);box-shadow:0 16px 28px #0e22461f}.analytics-card-wide{grid-column:1 / -1}.analytics-card-head{display:flex;justify-content:space-between;align-items:baseline;gap:.5rem;margin-bottom:.95rem}.analytics-card-head h3{margin:0;font-size:1.12rem;letter-spacing:.01em;color:#132a4b}.analytics-card-head span{font-size:.8rem;color:#5d6f85}.analytics-note{margin:.8rem 0 0;font-size:.8rem;color:#64748b}.donut-chart{width:170px;height:170px;margin:0 auto;border-radius:50%;display:grid;place-items:center;box-shadow:0 12px 24px #1f63d326}.donut-center{width:120px;height:120px;border-radius:50%;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px solid #e2e8f0}.donut-center strong{color:#0f172a;font-size:1.5rem;line-height:1}.donut-center span{margin-top:.3rem;color:#64748b;font-size:.8rem}.bar-chart{height:220px;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.6rem}.bar-item{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:.25rem}.bar-track{height:160px;width:100%;border-radius:10px;background:#eef4fa;border:1px solid #deebf7;display:flex;align-items:flex-end;overflow:hidden}.bar-fill{width:100%;border-radius:8px;background:linear-gradient(180deg,var(--dash-cyan-1) 0%,var(--dash-cyan-2) 100%);transition:height .35s ease;min-height:0}.bar-item strong{font-size:.85rem;color:#0f172a}.bar-item span{font-size:.72rem;color:#64748b;text-align:center;line-height:1.2}.tar-module-chart{border:1px solid #dbe7f1;border-radius:12px;background:linear-gradient(180deg,#fcfeff,#f4f8fd);padding:.9rem}.tar-chart-scale{display:flex;justify-content:space-between;font-size:.74rem;color:#64748b;margin-bottom:.55rem}.tar-module-list{display:grid;gap:.75rem}.tar-row{display:grid;gap:.35rem}.tar-row-head{display:flex;justify-content:space-between;gap:.5rem;font-size:.8rem;color:#475569}.tar-row-head span:first-child{font-weight:600;color:#1e293b}.tar-track{position:relative;height:28px;border-radius:8px;background:#eaf0f7;border:1px solid #d9e4f0;overflow:hidden}.tar-fill{height:100%;background:linear-gradient(90deg,var(--dash-cyan-1),#17b9ab);border-radius:inherit;transition:width .35s ease}.tar-track strong{position:absolute;right:.55rem;top:50%;transform:translateY(-50%);font-size:.78rem;color:#0f172a}.metric-block{margin-top:.7rem}.metric-label-row{display:flex;justify-content:space-between;margin-bottom:.3rem;font-size:.82rem;color:#334155}.metric-label-row strong{color:#0f172a}.metric-track{height:10px;background:#e2e8f0;border-radius:999px;overflow:hidden}.metric-fill{height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--dash-blue-1),var(--dash-cyan-1))}.metric-fill-secondary{background:linear-gradient(90deg,#178eb6,#1f63d3)}.dashboard-section-head{max-width:1280px;margin:.25rem auto .35rem;padding:0 .3rem;display:flex;justify-content:space-between;align-items:center;gap:.8rem}.dashboard-section-head h3{margin:0;color:#132a4b;font-size:1.08rem}.dashboard-section-head span{color:#5a6f8f;font-size:.82rem}.card-container{display:grid;max-width:1280px;margin:0 auto;padding:.4rem .2rem 1rem;grid-template-columns:repeat(4,1fr);gap:1.2rem;box-sizing:border-box}@keyframes fadeInUp{to{opacity:1;transform:translateY(0)}}@keyframes iconPulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.card-item{background:linear-gradient(135deg,#fff,color-mix(in srgb,var(--primary-accent, #10b981) 4%,#ffffff 96%));border-radius:16px;padding:2rem 1.5rem;text-align:center;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;border:1.5px solid color-mix(in srgb,var(--primary-accent, #10b981) 28%,#e2e8f0 72%);position:relative;overflow:hidden;box-shadow:0 8px 24px color-mix(in srgb,var(--primary-accent, #10b981) 16%,transparent);transition:all .35s cubic-bezier(.34,1.56,.64,1);opacity:0;transform:translateY(20px);animation:fadeInUp .6s ease-out forwards}.card-item:nth-child(1){animation-delay:.05s}.card-item:nth-child(2){animation-delay:.1s}.card-item:nth-child(3){animation-delay:.15s}.card-item:nth-child(4){animation-delay:.2s}.card-item:nth-child(5){animation-delay:.25s}.card-item:nth-child(6){animation-delay:.3s}.card-item:nth-child(7){animation-delay:.35s}.card-item:nth-child(8){animation-delay:.4s}.card-item:nth-child(9){animation-delay:.45s}.card-item:nth-child(10){animation-delay:.5s}.card-item:nth-child(11){animation-delay:.55s}.card-item:nth-child(12){animation-delay:.6s}.card-item:nth-child(13){animation-delay:.65s}.card-item:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 50% -10%,color-mix(in srgb,var(--primary-accent, #10b981) 18%,transparent) 0%,transparent 55%);opacity:0;transition:opacity .35s ease;pointer-events:none}.card-item:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,transparent 0%,color-mix(in srgb,#ffffff 60%,transparent) 50%,transparent 100%);opacity:0;transition:opacity .35s ease;pointer-events:none}.card-item:hover,.card-item:focus-visible{transform:translateY(-8px);box-shadow:0 20px 40px color-mix(in srgb,var(--primary-accent, #10b981) 26%,transparent);border-color:color-mix(in srgb,var(--primary-accent, #10b981) 52%,#e2e8f0 48%);outline:none}.card-item:hover:before{opacity:1}.card-item:hover:after{opacity:.6}.card-icon{font-size:2.6rem;color:var(--primary-accent, #10b981);margin-bottom:1.1rem;transition:all .35s cubic-bezier(.34,1.56,.64,1);width:60px;height:60px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,color-mix(in srgb,var(--primary-accent, #10b981) 12%,#ffffff 88%),color-mix(in srgb,var(--primary-accent, #10b981) 18%,#ffffff 82%));border-radius:12px;box-shadow:0 4px 12px color-mix(in srgb,var(--primary-accent, #10b981) 20%,transparent)}.card-item:hover .card-icon{transform:scale(1.2) rotate(6deg);color:var(--primary-accent-dark, #059669);background:linear-gradient(135deg,color-mix(in srgb,var(--primary-accent, #10b981) 22%,#ffffff 78%),color-mix(in srgb,var(--primary-accent, #10b981) 28%,#ffffff 72%));box-shadow:0 8px 20px color-mix(in srgb,var(--primary-accent, #10b981) 32%,transparent)}.card-label{font-size:.96rem;font-weight:700;color:color-mix(in srgb,var(--primary-accent-dark, #059669) 72%,#0f172a 28%);line-height:1.45;margin:0;transition:all .35s ease;letter-spacing:.015em}.card-item:hover .card-label{color:var(--primary-accent-dark, #059669);transform:translateY(-2px)}.admin-card{background:linear-gradient(135deg,#f0f4f8,#e2e8f0);border-left:4px solid var(--primary-accent)}.admin-card .card-icon{color:#4c51bf;background:linear-gradient(135deg,#e0e7ff,#f0f4ff)}.admin-card:hover .card-icon{color:#3c366b}.card-description{font-size:.8rem;color:var(--text-color-secondary);margin-top:.5rem;line-height:1.3}@media (max-width: 1024px){.dashboard-hero-panel,.analytics-grid{grid-template-columns:1fr}.analytics-card-wide{grid-column:auto}.card-container{grid-template-columns:repeat(3,1fr);gap:1rem}.card-item{padding:1.75rem 1.25rem}}@media (max-width: 768px){.card-container{grid-template-columns:repeat(2,1fr);gap:.9rem}.card-item{padding:1.5rem 1rem}.card-icon{font-size:2.2rem;width:54px;height:54px;margin-bottom:.9rem}.card-label{font-size:.9rem}}@media (max-width: 480px){.card-container{grid-template-columns:1fr;gap:.8rem}.card-item{padding:1.4rem 1rem}.card-icon{font-size:2rem;width:50px;height:50px;margin-bottom:.8rem}.card-label{font-size:.88rem}}@media (max-width: 768px){.faculty-dashboard-shell.scrollable-wrapper{padding:1rem .65rem}.analytics-grid{padding:.2rem}.bar-chart{height:auto;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.bar-track{height:120px}.card-container{grid-template-columns:repeat(2,1fr);margin-left:0;padding:.8rem .2rem}}@media (max-width: 480px){.card-container{grid-template-columns:1fr;gap:1rem}}:root{--profile-primary: var(--app-header-bg, #10b981);--profile-primary-hover: #059669;--profile-bg: #f8fafc;--card-bg: #ffffff;--border-color: rgba(226, 232, 240, .8);--text-main: #0f172a;--text-body: #334155;--text-muted: #64748b;--focus-ring: rgba(16, 185, 129, .15);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .05);--shadow-md: 0 4px 20px -2px rgba(0, 0, 0, .05), 0 2px 6px -1px rgba(0, 0, 0, .03);--shadow-lg: 0 10px 25px -5px rgba(0, 0, 0, .05), 0 8px 10px -6px rgba(0, 0, 0, .03);--transition-smooth: all .3s cubic-bezier(.4, 0, .2, 1)}.profile-container{max-width:1040px;margin:40px auto;padding:0 24px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.profile-page-header{margin-bottom:32px;text-align:left}.profile-page-header h1{font-size:2.2rem;font-weight:800;color:var(--text-main);margin:0 0 8px;letter-spacing:-.5px}.profile-page-header p{font-size:1rem;color:var(--text-muted);margin:0;font-weight:400}.profile-grid{display:grid;grid-template-columns:300px 1fr;gap:32px;align-items:start}.profile-card{background-color:var(--card-bg);border-radius:16px;border:1px solid var(--border-color);box-shadow:var(--shadow-md);padding:32px;transition:var(--transition-smooth)}.profile-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.photo-card{text-align:center;position:relative;overflow:hidden}.avatar-section{display:flex;flex-direction:column;align-items:center}.avatar-wrapper{position:relative;width:140px;height:140px;border-radius:50%;overflow:hidden;border:4px solid var(--card-bg);background-color:#f1f5f9;cursor:pointer;margin-bottom:20px;box-shadow:0 0 0 3px var(--profile-primary),var(--shadow-md);transition:var(--transition-smooth)}.avatar-wrapper:hover{box-shadow:0 0 0 4px var(--profile-primary),var(--shadow-lg);transform:scale(1.02)}.avatar-image{width:100%;height:100%;object-fit:cover;transition:var(--transition-smooth)}.avatar-wrapper:hover .avatar-image{transform:scale(1.05)}.avatar-fallback{font-size:5rem;line-height:132px;color:#cbd5e1}.avatar-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background-color:#0f172aa6;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:#fff;display:flex;flex-direction:column;justify-content:center;align-items:center;opacity:0;transition:var(--transition-smooth);cursor:pointer}.avatar-wrapper:hover .avatar-overlay{opacity:1}.avatar-overlay i{font-size:1.8rem;margin-bottom:6px;transform:translateY(10px);transition:var(--transition-smooth)}.avatar-wrapper:hover .avatar-overlay i{transform:translateY(0)}.avatar-overlay span{font-size:.8rem;font-weight:600;letter-spacing:.5px;transform:translateY(10px);transition:var(--transition-smooth);transition-delay:.05s}.avatar-wrapper:hover .avatar-overlay span{transform:translateY(0)}.avatar-section h3{font-size:1.35rem;font-weight:700;color:var(--text-main);margin:0 0 10px}.status-badge{display:inline-flex;align-items:center;gap:8px;padding:6px 14px;font-size:.75rem;font-weight:700;border-radius:9999px;text-transform:uppercase;letter-spacing:.8px;margin-bottom:20px;border:1px solid transparent}.status-badge.active{background-color:#10b9811a;color:#059669;border-color:#10b98133}.status-dot{width:8px;height:8px;background-color:#10b981;border-radius:50%;display:inline-block;position:relative}.status-dot:after{content:"";position:absolute;width:100%;height:100%;top:0;left:0;background-color:#10b981;border-radius:50%;animation:statusPulse 2s infinite ease-in-out}@keyframes statusPulse{0%{transform:scale(1);opacity:1}to{transform:scale(2.6);opacity:0}}.photo-instructions{font-size:.78rem;color:var(--text-muted);line-height:1.5;padding:0 8px}.profile-main-content{display:flex;flex-direction:column;gap:32px}.details-card h2{font-size:1.45rem;font-weight:700;color:var(--text-main);margin:0 0 24px;border-bottom:2px solid #f1f5f9;padding-bottom:12px;letter-spacing:-.3px}.profile-form .form-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.form-group label{font-size:.82rem;font-weight:650;color:var(--text-body);margin-bottom:8px;text-transform:uppercase;letter-spacing:.5px}.input-wrapper{position:relative;display:flex;align-items:center}.input-wrapper i{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:#94a3b8;font-size:1.15rem;pointer-events:none;transition:var(--transition-smooth)}.input-wrapper input{width:100%;padding:12px 16px 12px 42px!important;border:1.5px solid #cbd5e1;border-radius:10px;font-size:.95rem;color:var(--text-main);background-color:#fff;transition:var(--transition-smooth);box-sizing:border-box}.input-wrapper input:hover:not(:disabled){border-color:#94a3b8}.input-wrapper input:focus{outline:none;border-color:var(--profile-primary);box-shadow:0 0 0 4px var(--focus-ring);background-color:#fff}.input-wrapper input:focus+i,.input-wrapper input:focus~i{color:var(--profile-primary)}.form-group.read-only{opacity:.9}.input-wrapper input:disabled{background-color:#f8fafc;color:var(--text-muted);border:1.5px solid #e2e8f0;cursor:not-allowed;font-weight:500}.input-wrapper .lock-icon{color:#94a3b8}.password-verification-field{grid-column:span 2;margin-top:16px;background-color:#10b98108;padding:20px;border-radius:12px;border:1px solid rgba(16,185,129,.15);border-left:4px solid var(--profile-primary)}.password-verification-field label{color:#047857}.password-verification-field .input-wrapper input{border-color:#10b9814d}.password-verification-field .input-wrapper input:focus{border-color:var(--profile-primary)}.verification-text{font-size:.8rem;color:#065f46;margin-top:8px;display:flex;align-items:center;gap:6px}.verification-text:before{content:"ℹ";font-weight:700}.form-actions{margin-top:32px;display:flex;justify-content:flex-end;border-top:1.5px solid #f1f5f9;padding-top:24px}.save-btn{background-color:var(--profile-primary);color:#fff;border:none;border-radius:10px;padding:12px 24px;font-size:.95rem;font-weight:600;cursor:pointer;transition:var(--transition-smooth);display:inline-flex;align-items:center;gap:8px;box-shadow:0 4px 12px #10b98133}.save-btn:hover:not(:disabled){background-color:var(--profile-primary-hover);transform:translateY(-2px);box-shadow:0 6px 16px #10b9814d}.save-btn:active:not(:disabled){transform:translateY(0)}.save-btn:disabled{background-color:#10b98166;color:#ffffffd9;cursor:not-allowed;box-shadow:none}.password-card .form-grid{grid-template-columns:1fr 1fr}.profile-alert-box{display:flex;align-items:center;gap:14px;padding:16px 20px;border-radius:12px;margin-bottom:32px;font-size:.95rem;font-weight:500;border-left:4px solid transparent;animation:slideInDown .35s cubic-bezier(.16,1,.3,1);box-shadow:var(--shadow-sm)}.profile-alert-box.alert-success{background-color:#ecfdf5;color:#065f46;border:1px solid #d1fae5;border-left:4px solid #10b981}.profile-alert-box.alert-danger{background-color:#fef2f2;color:#991b1b;border:1px solid #fee2e2;border-left:4px solid #ef4444}.profile-alert-box i{font-size:1.3rem}@keyframes slideInDown{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}.profile-loading-spinner{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:100px 0}.profile-loading-spinner .spinner{width:48px;height:48px;border:4px solid #f1f5f9;border-top:4px solid var(--profile-primary);border-radius:50%;animation:spin 1s cubic-bezier(.55,.055,.675,.19) infinite;margin-bottom:20px}.profile-loading-spinner p{color:var(--text-muted);font-size:1rem;font-weight:500}.spinner-small{width:18px;height:18px;border:2px solid rgba(255,255,255,.35);border-top:2px solid #ffffff;border-radius:50%;animation:spin .8s linear infinite;display:inline-block}@media (max-width: 900px){.profile-grid{grid-template-columns:1fr;gap:32px}.photo-card{padding:24px}}@media (max-width: 600px){.profile-container{padding:0 16px;margin:24px auto}.profile-page-header h1{font-size:1.8rem}.profile-card{padding:20px}.profile-form .form-grid{grid-template-columns:1fr;gap:16px}.password-verification-field{grid-column:span 1;padding:16px}.form-actions{margin-top:24px;padding-top:16px;justify-content:stretch}.save-btn{width:100%;justify-content:center}.password-card .form-grid{grid-template-columns:1fr}}.student-dashboard{--student-primary: var(--primary-accent, #2563eb);--student-primary-dark: var(--primary-accent-dark, #1d4ed8);--student-primary-light: var(--primary-accent-light, #eff6ff);--student-bg: var(--dash-bg, #f8fafc);--student-surface: var(--card-bg, #ffffff);--student-border: var(--border-color, #dbe5f1);--student-text: var(--text-main, #0f172a);--student-muted: var(--text-muted, #64748b);--student-on-primary: var(--text-on-primary, #ffffff);font-family:Inter,system-ui,-apple-system,sans-serif;display:flex;width:100%;height:100vh;overflow:hidden;background:linear-gradient(180deg,color-mix(in srgb,var(--student-primary-light) 38%,#ffffff 62%),#f8fafc)}.student-sidebar{width:270px;height:100vh;position:fixed;top:0;left:0;z-index:1200;overflow-y:auto;background:linear-gradient(180deg,var(--student-primary-dark) 0%,color-mix(in srgb,var(--student-primary-dark) 80%,#000000 20%) 100%);border-right:1px solid color-mix(in srgb,var(--student-primary) 32%,#ffffff 68%);box-shadow:0 20px 36px color-mix(in srgb,var(--student-primary-dark) 42%,#000000 58%)}.sidebar-header{padding:22px 16px;border-bottom:1px solid color-mix(in srgb,#ffffff 18%,transparent)}.student-brand{display:flex;align-items:center;gap:10px;min-width:0}.student-brand>div{min-width:0}.sidebar-title{margin:0;color:var(--student-on-primary);font-size:1rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.student-brand-subtitle{margin:2px 0 0;color:color-mix(in srgb,#ffffff 78%,transparent);font-size:.78rem;font-weight:500}.student-brand-logo{max-width:90px;max-height:38px;width:auto;height:auto;object-fit:contain;border-radius:6px;border:1px solid color-mix(in srgb,#ffffff 45%,transparent)}.student-header-logo{max-width:100px;max-height:38px;width:auto;height:auto;object-fit:contain;border-radius:6px;border:1px solid color-mix(in srgb,#ffffff 45%,transparent)}.student-brand-fallback,.student-header-fallback{width:34px;height:34px;border-radius:10px;border:1px solid color-mix(in srgb,#ffffff 45%,transparent)}.student-brand-fallback,.student-header-fallback{display:inline-flex;align-items:center;justify-content:center;font-weight:700;font-size:.72rem;text-transform:uppercase}.student-brand-fallback{background:color-mix(in srgb,#ffffff 16%,transparent);color:var(--student-on-primary)}.sidebar-menu{list-style:none;margin:0;padding:10px;display:grid;gap:4px}.sidebar-section-label{font-size:.72rem;letter-spacing:.1em;font-weight:700;text-transform:uppercase;color:#ffffff8c!important;margin:18px 0 6px;padding:0 12px}.sidebar-item{border:none}.menu-item,.dropdown-toggle{width:100%;border:1px solid transparent;border-radius:10px;background:transparent;color:color-mix(in srgb,#ffffff 86%,transparent);display:flex;align-items:center;gap:10px;padding:11px 12px;cursor:pointer;font-size:.9rem;font-weight:600;text-align:left;transition:all .2s ease}.menu-item i,.dropdown-toggle i{margin-right:0;width:20px;text-align:center;font-size:.98rem}.dropdown-toggle{justify-content:space-between}.dropdown-toggle span{flex:1}.menu-item:hover,.dropdown-toggle:hover,.dropdown-item:hover{background:color-mix(in srgb,var(--student-primary) 26%,transparent);color:var(--student-on-primary);border-color:color-mix(in srgb,#ffffff 26%,transparent)}.menu-item.active,.dropdown-toggle.active,.dropdown-item.active{background:linear-gradient(135deg,var(--student-primary) 0%,color-mix(in srgb,var(--student-primary-dark) 85%,#0f172a 15%) 100%);color:var(--student-on-primary);border-color:color-mix(in srgb,#ffffff 42%,transparent);box-shadow:0 10px 18px color-mix(in srgb,var(--student-primary) 34%,transparent)}.dropdown-menu{list-style:none;margin:6px 0 0;padding:6px;border-radius:10px;background:color-mix(in srgb,#000000 18%,transparent)}.dropdown-item{display:flex;align-items:center;gap:8px;padding:9px 10px;border-radius:8px;cursor:pointer;color:color-mix(in srgb,#ffffff 82%,transparent);border:1px solid transparent;font-size:.86rem;transition:all .2s ease}.dropdown-item i{width:18px;text-align:center}.student-main-content{flex:1;min-width:0;margin-left:270px;height:100vh;display:flex;flex-direction:column;overflow:hidden}.student-header{position:sticky;top:0;z-index:1100;min-height:62px;width:100%!important;max-width:100%!important;margin:0!important;border-radius:0!important;box-sizing:border-box!important;padding:12px 24px;display:flex;align-items:center;justify-content:space-between;gap:12px;background:linear-gradient(135deg,var(--student-surface) 0%,color-mix(in srgb,var(--student-primary-light) 34%,#ffffff 66%) 100%);border:none!important;border-bottom:1px solid var(--student-border)!important;box-shadow:0 4px 16px #0206170f}.header-left{flex:1;min-width:0}.student-header-brand{display:flex;align-items:center;gap:9px;min-width:0}.student-header-brand h1{margin:0;font-size:1rem;color:var(--student-text);font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.student-header-fallback{background:color-mix(in srgb,var(--student-primary-light) 75%,#ffffff 25%);color:var(--student-primary-dark);border-color:color-mix(in srgb,var(--student-primary) 40%,#ffffff 60%)}.user-info{display:flex;flex-direction:column;align-items:flex-end;gap:1px}.user-name{font-size:.85rem;font-weight:700;color:var(--student-text)}.college-info{font-size:.72rem;color:var(--student-muted)}.mobile-menu-toggle{display:none;width:36px;height:36px;border-radius:9px;border:1px solid var(--student-border);background:var(--student-surface);color:var(--student-text);cursor:pointer;font-size:1.1rem;align-items:center;justify-content:center}.mobile-menu-toggle:hover{background:color-mix(in srgb,var(--student-primary-light) 60%,#ffffff 40%)}.logout-btn{min-height:36px;border:1px solid color-mix(in srgb,var(--danger-color, #ef4444) 40%,#ffffff 60%);border-radius:10px;background:color-mix(in srgb,var(--danger-color, #ef4444) 14%,#ffffff 86%);color:var(--danger-color, #b91c1c);font-size:.82rem;font-weight:700;display:inline-flex;align-items:center;gap:6px;padding:7px 12px;cursor:pointer}.logout-btn:hover{background:color-mix(in srgb,var(--danger-color, #ef4444) 22%,#ffffff 78%)}.student-page-content{flex:1;padding:20px;overflow-y:auto}.mobile-sidebar-overlay{display:none}@media (max-width: 1024px){.student-sidebar{width:250px}.student-main-content{margin-left:250px}}@media (max-width: 768px){.student-sidebar{transform:translate(-104%);transition:transform .25s ease;width:min(84vw,300px)}.student-sidebar.mobile-visible{transform:translate(0)}.mobile-sidebar-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:color-mix(in srgb,#0f172a 52%,transparent);z-index:1190;opacity:0;pointer-events:none;transition:opacity .25s ease;display:block}.mobile-sidebar-overlay.visible{opacity:1;pointer-events:auto}.student-main-content{margin-left:0}.mobile-menu-toggle{display:inline-flex;flex-shrink:0}.user-info{display:none}.student-header{padding:10px 12px}.student-header-brand h1{font-size:.9rem}.student-header-logo{max-height:24px;max-width:60px}.student-page-content{padding:14px}.logout-btn{width:36px;height:36px;min-height:36px;padding:0;justify-content:center}.logout-btn span{display:none}}.student-dashboard{width:100%!important;max-width:100%!important}.student-main-content{width:calc(100% - 270px)!important;max-width:calc(100% - 270px)!important;flex:1 1 auto!important}.student-page-content{width:100%!important;max-width:100%!important;padding:20px!important;box-sizing:border-box!important;display:flex!important;flex-direction:column!important}.student-content-container,.practical-exams-container,.upload-container,.notices-container,.ebooks-container,.mock-exam-shell,.mock-exam-page{width:100%!important;max-width:100%!important;margin:0!important;box-sizing:border-box!important}@media (max-width: 1024px){.student-main-content{width:calc(100% - 250px)!important;max-width:calc(100% - 250px)!important}}@media (max-width: 768px){.student-main-content{width:100%!important;max-width:100%!important;margin-left:0!important}}.student-dashboard-content{display:grid;grid-template-columns:2.2fr 1fr;gap:24px;width:100%;padding:4px 0 20px;align-items:start}.welcome-section-modern,.hero-section-modern,.quick-access-modern,.widget-card{background:var(--student-surface, #ffffff);border:1px solid var(--student-border, #e2e8f0);border-radius:14px;box-shadow:0 2px 8px #0f172a08;transition:all .25s cubic-bezier(.4,0,.2,1)}.welcome-section-modern{padding:20px 24px;margin-bottom:20px}.welcome-info{display:flex;align-items:center;gap:18px}.welcome-emoji{font-size:2.4rem;line-height:1}.welcome-info h1{margin:0;color:var(--student-text, #0f172a);font-size:1.55rem;font-weight:850;letter-spacing:-.02em;line-height:1.2}.welcome-info p{margin:4px 0 0;color:var(--student-muted, #64748b);font-size:.92rem}.student-meta-badges{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem;margin-top:.8rem}.meta-badge{display:inline-flex;align-items:center;font-size:.75rem;font-weight:600;color:#475569;background-color:#f1f5f9;border:1px solid #e2e8f0;padding:.25rem .6rem;border-radius:6px}.stats-row{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:24px}.stat-item{background:var(--student-surface, #ffffff);border:1px solid var(--student-border, #e2e8f0);border-radius:12px;padding:16px;display:flex;align-items:center;gap:14px;cursor:pointer;box-shadow:0 1px 4px #0f172a05;transition:all .2s cubic-bezier(.4,0,.2,1)}.stat-item:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--student-primary) 35%,var(--student-border));box-shadow:0 6px 16px #0f172a12}.stat-icon-wrapper{width:44px;height:44px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:1.2rem}.stat-icon-wrapper.materials{background:color-mix(in srgb,var(--student-primary) 12%,#ffffff);color:var(--student-primary-dark)}.stat-icon-wrapper.exams{background:color-mix(in srgb,#10b981 12%,#ffffff);color:#047857}.stat-icon-wrapper.notices{background:color-mix(in srgb,#f59e0b 12%,#ffffff);color:#b45309}.stat-details{display:flex;flex-direction:column;gap:2px}.stat-value{font-size:1.35rem;font-weight:850;color:var(--student-text, #0f172a);line-height:1.1}.stat-label{font-size:.8rem;font-weight:600;color:var(--student-muted, #64748b)}.hero-section-modern{padding:26px 30px;display:flex;align-items:center;justify-content:space-between;gap:24px;background:linear-gradient(135deg,var(--student-primary) 0%,var(--student-primary-dark) 100%);color:var(--student-on-primary, #ffffff);border-color:transparent;margin-bottom:24px}.hero-content{flex:1;min-width:0}.hero-badge{display:inline-flex;align-items:center;padding:4px 10px;border-radius:999px;background:color-mix(in srgb,#ffffff 18%,transparent);border:1px solid color-mix(in srgb,#ffffff 35%,transparent);font-size:.72rem;font-weight:750;letter-spacing:.05em;text-transform:uppercase}.hero-content h2{margin:12px 0 6px;font-size:1.45rem;font-weight:800;letter-spacing:-.02em;line-height:1.25}.hero-content p{margin:0;font-size:.92rem;opacity:.9;font-weight:500;line-height:1.4}.hero-actions{margin-top:18px;display:flex;gap:12px;flex-wrap:wrap}.cta-btn-modern{padding:9px 15px;border-radius:9px;border:1px solid transparent;background:#fff;color:var(--student-primary-dark);font-size:.85rem;font-weight:750;cursor:pointer;transition:all .2s ease}.cta-btn-modern:hover{background:color-mix(in srgb,var(--student-primary-light) 95%,#000000 5%);transform:translateY(-1px)}.cta-btn-modern.secondary{background:color-mix(in srgb,#ffffff 15%,transparent);border-color:color-mix(in srgb,#ffffff 40%,transparent);color:#fff}.cta-btn-modern.secondary:hover{background:color-mix(in srgb,#ffffff 25%,transparent)}.hero-illustration{font-size:3.8rem;opacity:.85;min-width:90px;text-align:center;display:flex;align-items:center;justify-content:center}.quick-access-modern{padding:20px}.quick-access-modern h2{margin:0 0 16px;color:var(--student-text, #0f172a);font-size:1.05rem;font-weight:800;letter-spacing:-.01em}.quick-actions-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.action-card{background:var(--student-surface, #ffffff);border:1px solid var(--student-border, #e2e8f0);border-radius:12px;padding:20px 16px;cursor:pointer;display:flex;flex-direction:column;gap:8px;transition:all .22s cubic-bezier(.4,0,.2,1)}.action-card:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--student-primary) 35%,var(--student-border));box-shadow:0 8px 18px #0f172a0f}.action-card i{font-size:1.45rem;line-height:1}.text-primary-icon{color:var(--student-primary)}.text-success-icon{color:#10b981}.text-warning-icon{color:#f59e0b}.action-card h3{margin:0;font-size:.95rem;font-weight:750;color:var(--student-text, #0f172a)}.action-card p{margin:0;font-size:.76rem;color:var(--student-muted, #64748b);line-height:1.4;font-weight:500}.dashboard-side-col{display:grid;grid-template-columns:1fr;gap:20px}.widget-card{padding:20px}.datetime-widget{display:flex;flex-direction:column;align-items:center;text-align:center;padding:22px;background:linear-gradient(180deg,var(--student-surface) 0%,color-mix(in srgb,var(--student-primary-light) 15%,var(--student-surface)) 100%)}.widget-header-icon{width:46px;height:46px;border-radius:50%;background:color-mix(in srgb,var(--student-primary) 12%,#ffffff);color:var(--student-primary);display:flex;align-items:center;justify-content:center;font-size:1.25rem;margin-bottom:12px}.time-val{font-size:1.9rem;font-weight:850;color:var(--student-text, #0f172a);letter-spacing:-.03em;line-height:1.1}.date-val{font-size:.8rem;font-weight:650;color:var(--student-muted, #64748b);margin-top:6px}.widget-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.widget-header h3{margin:0;font-size:.98rem;font-weight:800;color:var(--student-text, #0f172a)}.view-all-link{background:transparent;border:none;color:var(--student-primary);font-size:.78rem;font-weight:750;cursor:pointer;display:flex;align-items:center;gap:3px;padding:2px 6px;border-radius:4px;transition:background .15s ease}.view-all-link:hover{background:color-mix(in srgb,var(--student-primary) 10%,transparent)}.notices-mini-list{display:flex;flex-direction:column;gap:12px}.notice-mini-item{background:color-mix(in srgb,var(--student-bg, #f8fafc) 70%,#ffffff);border:1px solid var(--student-border, #e2e8f0);border-radius:10px;padding:12px 14px;cursor:pointer;display:flex;flex-direction:column;gap:6px;transition:all .2s ease}.notice-mini-item:hover{border-color:color-mix(in srgb,var(--student-primary) 30%,var(--student-border));background:var(--student-surface);transform:translate(2px);box-shadow:0 4px 10px #0f172a0a}.notice-meta{display:flex;justify-content:space-between;align-items:center}.notice-badge-mini{font-size:.62rem;font-weight:750;text-transform:uppercase;padding:2px 7px;border-radius:999px;letter-spacing:.02em}.notice-badge-mini.urgent{background:#fef2f2;color:#ef4444}.notice-badge-mini.exam{background:#ecfdf5;color:#10b981}.notice-badge-mini.circular{background:#eff6ff;color:#3b82f6}.notice-badge-mini.general{background:#f8fafc;color:#64748b}.notice-time{font-size:.72rem;color:var(--student-muted, #64748b);font-weight:500}.notice-title-mini{margin:0;font-size:.85rem;font-weight:750;color:var(--student-text, #0f172a);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.notice-desc-mini{margin:0;font-size:.7rem;color:var(--student-muted, #64748b)}.loading-state,.empty-state-mini{padding:24px 12px;text-align:center;font-size:.8rem;color:var(--student-muted, #64748b);font-weight:500;display:flex;flex-direction:column;align-items:center;gap:6px}.empty-state-mini i{font-size:1.2rem;color:var(--student-muted)}@media (max-width: 1120px){.student-dashboard-content{grid-template-columns:1.8fr 1fr;gap:18px}}@media (max-width: 1024px){.student-dashboard-content{grid-template-columns:1fr;gap:20px}.dashboard-side-col{grid-template-columns:1fr 1.2fr;gap:16px}}@media (max-width: 768px){.welcome-emoji{font-size:2rem}.welcome-info h1{font-size:1.35rem}.student-dashboard-content{grid-template-columns:1fr;gap:20px}.stats-row{grid-template-columns:1fr;gap:12px}}@media (max-width: 480px){.hero-section-modern{padding:20px;flex-direction:column;align-items:stretch}.hero-illustration{display:none}.quick-actions-grid{grid-template-columns:1fr;gap:12px}.dashboard-side-col{grid-template-columns:1fr;gap:16px}}.student-attendance-dashboard{--green-main: #10b981;--green-dark: #059669;--green-light: #ecfdf5;--orange-main: #f59e0b;--orange-light: #fef3c7;--red-main: #ef4444;--red-light: #fee2e2;--blue-main: #3b82f6;--blue-light: #eff6ff;--gray-main: #64748b;--gray-light: #f8fafc;--text-primary: #0f172a;--text-muted: #64748b;--card-bg-white: #ffffff;--border-color-soft: #e2e8f0;display:flex;flex-direction:column;gap:24px;width:100%;padding:4px 0 30px;font-family:Inter,system-ui,-apple-system,sans-serif}.animate-fade-in{animation:fadeIn .4s ease-out forwards}.animate-slide-down{animation:slideDown .3s ease-out forwards}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}.silent-refresh-banner{background:var(--green-light);color:var(--green-dark);border:1px solid color-mix(in srgb,var(--green-main) 30%,transparent);border-radius:8px;padding:8px 16px;font-size:.85rem;font-weight:600;display:flex;align-items:center;gap:8px}.silent-refresh-banner .dot{width:8px;height:8px;background-color:var(--green-main);border-radius:50%;display:inline-block}.animate-pulse{animation:pulse 1.5s infinite}@keyframes pulse{0%{transform:scale(.95);opacity:.5}50%{transform:scale(1.15);opacity:1}to{transform:scale(.95);opacity:.5}}.attendance-header-section{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px;border-bottom:1px solid var(--border-color-soft);padding-bottom:16px}.attendance-dashboard-title{margin:0;font-size:1.8rem;font-weight:850;letter-spacing:-.03em;color:var(--text-primary)}.attendance-dashboard-subtitle{margin:4px 0 0;font-size:.95rem;color:var(--text-muted)}.college-theme-badge{background:var(--green-light);color:var(--green-dark);border:1px solid color-mix(in srgb,var(--green-main) 20%,transparent);padding:6px 12px;border-radius:99px;font-size:.8rem;font-weight:750;letter-spacing:.05em;text-transform:uppercase}.kpi-cards-grid{display:grid;grid-template-columns:2fr 1fr;gap:20px}.kpi-card{background:var(--card-bg-white);border:1px solid var(--border-color-soft);border-radius:16px;padding:20px;box-shadow:0 4px 12px #0f172a08;display:flex;flex-direction:column;justify-content:space-between;transition:transform .2s ease,box-shadow .2s ease;min-height:180px}.kpi-card:hover{transform:translateY(-2px);box-shadow:0 8px 24px #0f172a0f}.glassmorphic{background:#ffffffb3!important;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.4)!important}.overall-card{display:grid;grid-template-columns:1.3fr 1fr;align-items:center;gap:16px}.kpi-card-header{display:flex;flex-direction:column;gap:8px}.kpi-label{font-size:.72rem;letter-spacing:.08em;font-weight:800;text-transform:uppercase;color:var(--text-muted)}.overall-percentage{font-size:2.2rem;font-weight:900;letter-spacing:-.03em;color:var(--text-primary);margin:2px 0 0}.status-badge{padding:4px 10px;border-radius:6px;font-size:.75rem;font-weight:800;text-align:center;width:fit-content}.badge-safe{background-color:var(--green-light);color:var(--green-dark)}.badge-defaulter{background-color:var(--red-light);color:var(--red-main)}.circular-progress-wrapper{display:flex;justify-content:center;align-items:center;height:90px}.circular-svg{width:90px;height:90px}.circle-bg{fill:none;stroke:#f1f5f9;stroke-width:3.2}.circle{fill:none;stroke-width:3.2;stroke-linecap:round;transition:stroke-dasharray .35s}.circle-green{stroke:var(--green-main)}.circle-orange{stroke:var(--orange-main)}.circle-text{fill:var(--text-primary);font-size:8px;font-weight:800;text-anchor:middle}.kpi-mini-grid{grid-column:span 2;display:grid;grid-template-columns:repeat(3,1fr);gap:12px;border-top:1px solid var(--border-color-soft);padding-top:12px;margin-top:4px}.mini-stat{display:flex;flex-direction:column;align-items:center}.mini-val{font-size:1rem;font-weight:800;color:var(--text-primary)}.mini-lbl{font-size:.7rem;color:var(--text-muted);font-weight:600}.kpi-card-icon-header{display:flex;align-items:center;gap:14px}.icon-box{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.3rem}.streak-icon-box{background:var(--orange-light);color:var(--orange-main)}.medical-icon-box{background:var(--blue-light);color:var(--blue-main)}.card-kpi-title{margin:0;font-size:1.15rem;font-weight:800;color:var(--text-primary)}.streak-detailed-stats,.medical-detailed-stats{display:flex;flex-direction:column;gap:8px;margin-top:16px}.streak-metric-row,.medical-metric-row{display:flex;justify-content:space-between;font-size:.85rem;color:var(--text-primary);border-bottom:1px dashed var(--border-color-soft);padding-bottom:6px}.streak-metric-row span,.medical-metric-row span{color:var(--text-muted)}.streak-footer-text{font-size:.72rem;color:var(--text-muted);margin:4px 0 0}.btn-request-leave{background:var(--gray-light);color:var(--text-primary);border:1px solid var(--border-color-soft);padding:8px;border-radius:8px;font-size:.8rem;font-weight:700;cursor:pointer;width:100%;margin-top:4px;transition:all .2s ease}.btn-request-leave:hover{background:var(--border-color-soft);transform:translateY(-1px)}.low-attendance-alert-box{background:var(--red-light);border:1px solid color-mix(in srgb,var(--red-main) 25%,transparent);border-radius:16px;padding:20px;display:flex;flex-direction:column;gap:16px;box-shadow:0 4px 16px #ef44440d}.alert-box-header{display:flex;gap:12px;align-items:flex-start}.alert-warning-icon{font-size:1.5rem;color:var(--red-main);line-height:1}.alert-box-header h4{margin:0;font-size:1.05rem;font-weight:800;color:color-mix(in srgb,var(--red-main) 70%,#000000)}.alert-box-header p{margin:2px 0 0;font-size:.88rem;color:color-mix(in srgb,var(--red-main) 70%,#000000);opacity:.85}.alert-subject-list{display:flex;flex-direction:column;gap:10px}.alert-subject-item{background:#fff;border-radius:10px;padding:12px 16px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;border-left:4px solid var(--red-main);box-shadow:0 2px 6px #00000005}.subject-meta{display:flex;flex-direction:column}.subj-name{font-size:.95rem;font-weight:800;color:var(--text-primary)}.subj-code{font-size:.8rem;color:var(--text-muted)}.subject-alert-metrics{display:flex;gap:8px;flex-wrap:wrap}.metric-pill{padding:6px 12px;border-radius:6px;font-size:.78rem;font-weight:600}.pill-red{background:var(--red-light);color:var(--red-main)}.pill-gray{background:var(--gray-light);color:var(--gray-main)}.pill-green-border{background:var(--green-light);color:var(--green-dark);border:1px dashed var(--green-main);font-weight:750}.dashboard-grid-layout{display:grid;grid-template-columns:1.35fr 1fr;gap:24px;align-items:start}.grid-left-col,.grid-right-col{display:flex;flex-direction:column;gap:24px}.section-container{background:var(--card-bg-white);border:1px solid var(--border-color-soft);border-radius:16px;padding:20px;box-shadow:0 4px 12px #0f172a05}.section-title{margin:0 0 16px;font-size:1.12rem;font-weight:800;color:var(--text-primary);display:flex;align-items:center}.text-success-icon{color:var(--green-main)}.subject-cards-stack{display:flex;flex-direction:column;gap:16px}.subject-card-item{background:var(--gray-light);border:1px solid var(--border-color-soft);border-radius:12px;padding:16px;display:flex;flex-direction:column;gap:12px;transition:transform .15s ease}.subject-card-item:hover{transform:scale(1.008)}.subject-card-main{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.subject-details-left{display:flex;flex-direction:column;gap:4px}.subject-details-left h4{margin:0;font-size:1.05rem;font-weight:800;color:var(--text-primary)}.faculty-name-label{font-size:.82rem;color:var(--text-muted);font-weight:600}.subject-code-badge{background:#fff;color:var(--text-primary);border:1px solid var(--border-color-soft);padding:2px 8px;border-radius:6px;font-size:.72rem;font-weight:700;width:fit-content;margin-top:2px}.subject-attendance-summary{display:flex;flex-direction:column;align-items:flex-end;gap:2px}.attendance-percentage-big{font-size:1.35rem;font-weight:900}.text-green{color:var(--green-main)}.text-orange{color:var(--orange-main)}.text-red{color:var(--red-main)}.ratio-label{font-size:.78rem;color:var(--text-muted);font-weight:600}.safety-tag{font-size:.7rem;font-weight:800;text-transform:uppercase;padding:1px 6px;border-radius:4px;margin-top:2px}.safety-tag.safe{background:var(--green-light);color:var(--green-dark)}.safety-tag.danger{background:var(--red-light);color:var(--red-main)}.progress-bar-container{height:8px;background:#e2e8f1;border-radius:99px;overflow:hidden;position:relative}.progress-bar-fill{height:100%;border-radius:99px;transition:width .4s ease-out}.progress-green{background:var(--green-main)}.progress-orange{background:var(--orange-main)}.progress-red{background:var(--red-main)}.sub-lectures-breakdown{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;background:#fff;padding:8px 12px;border-radius:8px;border:1px solid var(--border-color-soft)}.breakdown-item{font-size:.72rem;color:var(--text-muted);text-align:center}.breakdown-item strong{color:var(--text-primary);font-weight:700}.recovery-hint-banner{background:var(--red-light);color:var(--red-main);font-size:.75rem;font-weight:600;border-radius:6px;padding:6px 10px}.trends-charts-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px}.trend-chart-card{background:var(--gray-light);border:1px solid var(--border-color-soft);border-radius:12px;padding:16px}.trend-chart-card.chart-full-row{grid-column:1 / -1}.trend-chart-card h5{margin:0 0 12px;font-size:.92rem;font-weight:800;color:var(--text-primary)}.svg-chart-container{width:100%;height:160px;display:flex;justify-content:center;align-items:center}.chart-bar-animation{animation:slideRight .5s ease-out forwards}@keyframes slideRight{0%{width:0}}.calendar-header-meta{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.calendar-controls{display:flex;align-items:center;gap:8px}.btn-cal-nav{background:#fff;border:1px solid var(--border-color-soft);width:28px;height:28px;border-radius:6px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background .15s ease}.btn-cal-nav:hover{background:var(--gray-light)}.calendar-month-name{font-size:.9rem;font-weight:750;color:var(--text-primary);min-width:105px;text-align:center}.calendar-legend{display:flex;flex-wrap:wrap;gap:12px;font-size:.72rem;font-weight:700;color:var(--text-muted);border-bottom:1px solid var(--border-color-soft);padding-bottom:10px;margin-bottom:14px}.legend-item{display:flex;align-items:center;gap:4px}.dot{width:8px;height:8px;border-radius:50%;display:inline-block}.dot-present{background-color:var(--green-main)}.dot-absent{background-color:var(--red-main)}.dot-late{background-color:var(--orange-main)}.dot-holiday{background-color:#e2e8f0;border:1px solid #cbd5e1}.dot-exam{background-color:var(--blue-main)}.calendar-grid-card{display:flex;flex-direction:column;gap:4px}.calendar-grid-days-labels{display:grid;grid-template-columns:repeat(7,1fr);text-align:center;font-size:.75rem;font-weight:800;color:var(--text-muted);padding-bottom:4px}.calendar-grid-cells{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.calendar-cell{aspect-ratio:1.1;border-radius:8px;border:1px solid var(--border-color-soft);background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;position:relative;transition:all .15s ease}.calendar-cell:hover{transform:scale(1.06);z-index:10;box-shadow:0 4px 10px #0000000d}.cell-day-num{font-size:.8rem;font-weight:700;color:#94a3b8}.in-month .cell-day-num{color:var(--text-primary)}.cell-today{border:2px solid var(--green-main)!important;box-shadow:0 0 8px #10b98133}.cell-present{background-color:var(--green-light);border-color:color-mix(in srgb,var(--green-main) 15%,transparent)}.cell-present .cell-day-num{color:var(--green-dark)}.cell-present .cell-dot-indicator{background-color:var(--green-main)}.cell-absent{background-color:var(--red-light);border-color:color-mix(in srgb,var(--red-main) 15%,transparent)}.cell-absent .cell-day-num{color:var(--red-main)}.cell-absent .cell-dot-indicator{background-color:var(--red-main)}.cell-late{background-color:var(--orange-light);border-color:color-mix(in srgb,var(--orange-main) 15%,transparent)}.cell-late .cell-day-num{color:var(--orange-main)}.cell-late .cell-dot-indicator{background-color:var(--orange-main)}.cell-holiday{background-color:#f1f5f9;border-color:#cbd5e1}.cell-holiday .cell-day-num{color:#64748b}.cell-holiday .cell-dot-indicator{background-color:#64748b}.cell-exam{background-color:var(--blue-light);border-color:color-mix(in srgb,var(--blue-main) 15%,transparent)}.cell-exam .cell-day-num{color:var(--blue-main)}.cell-exam .cell-dot-indicator{background-color:var(--blue-main)}.cell-dot-indicator{width:4px;height:4px;border-radius:50%;position:absolute;bottom:4px}.monthly-cards-list{display:flex;flex-direction:column;gap:10px}.monthly-card-item{background:var(--gray-light);border:1px solid var(--border-color-soft);border-radius:10px;overflow:hidden}.monthly-card-header{padding:12px 16px;display:flex;justify-content:space-between;align-items:center;cursor:pointer;-webkit-user-select:none;user-select:none}.monthly-header-details{display:flex;align-items:center;gap:12px}.month-card-title{font-size:.92rem;font-weight:800;color:var(--text-primary)}.month-pct-badge{padding:2px 8px;border-radius:4px;font-size:.72rem;font-weight:800}.chevron-arrow{color:var(--text-muted);font-size:.85rem}.monthly-card-body{padding:12px 16px;background:#fff;border-top:1px solid var(--border-color-soft);display:flex;flex-direction:column;gap:8px}.month-detail-row{display:flex;justify-content:space-between;font-size:.82rem}.month-detail-row span{color:var(--text-muted)}.month-detail-row strong{color:var(--text-primary);font-weight:700}.month-progress-container{display:flex;flex-direction:column;gap:4px;margin-top:4px;border-top:1px dashed var(--border-color-soft);padding-top:8px}.month-progress-lbl{font-size:.75rem;color:var(--text-muted);font-weight:600}.month-bar{height:6px;background:#e2e8f1;border-radius:4px;overflow:hidden}.month-fill{height:100%;border-radius:4px}.month-status-desc{font-size:.72rem;font-weight:800;text-align:right;margin-top:2px}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a73;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:2000;display:flex;justify-content:center;align-items:center;padding:16px}.lecture-details-modal{background:var(--card-bg-white);border:1px solid var(--border-color-soft);border-radius:18px;width:100%;max-width:480px;box-shadow:0 20px 48px #00000026;display:flex;flex-direction:column;max-height:85vh;overflow:hidden}.modal-header{padding:18px 20px;border-bottom:1px solid var(--border-color-soft);display:flex;justify-content:space-between;align-items:flex-start}.modal-header h3{margin:0;font-size:1.15rem;font-weight:850;color:var(--text-primary)}.modal-date-label{font-size:.8rem;color:var(--text-muted);font-weight:600}.btn-close-modal{background:transparent;border:none;font-size:1.1rem;color:var(--text-muted);cursor:pointer;padding:2px;border-radius:6px;display:inline-flex}.btn-close-modal:hover{color:var(--text-primary);background:var(--gray-light)}.modal-body{padding:20px;overflow-y:auto;flex:1}.modal-no-lectures{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:40px 0;color:var(--text-muted)}.modal-no-lectures i{font-size:2.2rem;color:#cbd5e1}.modal-no-lectures p{margin:0;font-size:.88rem;font-weight:600;text-align:center}.modal-lectures-list{display:flex;flex-direction:column;gap:16px}.modal-lecture-item{background:var(--gray-light);border:1px solid var(--border-color-soft);border-radius:10px;padding:14px;display:flex;flex-direction:column;gap:8px}.modal-lecture-item.border-present{border-left:4px solid var(--green-main)}.modal-lecture-item.border-absent{border-left:4px solid var(--red-main)}.modal-lecture-item.border-late{border-left:4px solid var(--orange-main)}.modal-lecture-item.border-holiday{border-left:4px solid #cbd5e1}.modal-lecture-item.border-exam{border-left:4px solid var(--blue-main)}.lecture-item-top{display:flex;justify-content:space-between;align-items:center}.lecture-type-badge{background:#fff;color:var(--text-primary);border:1px solid var(--border-color-soft);padding:2px 8px;border-radius:6px;font-size:.7rem;font-weight:750}.lecture-status-pill{padding:2px 8px;border-radius:4px;font-size:.72rem;font-weight:800;text-transform:uppercase}.status-present{background-color:var(--green-light);color:var(--green-dark)}.status-absent{background-color:var(--red-light);color:var(--red-main)}.status-late{background-color:var(--orange-light);color:var(--orange-main)}.status-holiday{background-color:#f1f5f9;color:#64748b}.status-exam{background-color:var(--blue-light);color:var(--blue-main)}.lecture-subject-name{margin:0;font-size:.95rem;font-weight:800;color:var(--text-primary)}.lecture-meta-row{font-size:.78rem;color:var(--text-muted);font-weight:600}.lecture-topic-block,.lecture-remark-block{font-size:.78rem;margin-top:4px;background:#fff;padding:8px 12px;border-radius:6px;border:1px dashed var(--border-color-soft)}.lecture-topic-block strong,.lecture-remark-block strong{color:var(--text-primary);display:block;margin-bottom:2px}.lecture-topic-block p,.lecture-remark-block p{margin:0;color:var(--text-muted)}.modal-footer{padding:14px 20px;border-top:1px solid var(--border-color-soft)}.btn-success-custom{background:linear-gradient(135deg,var(--green-main) 0%,var(--green-dark) 100%);color:#fff;border:none;padding:10px 16px;border-radius:10px;font-size:.9rem;font-weight:750;cursor:pointer;box-shadow:0 4px 12px #10b98133;transition:all .2s ease}.btn-success-custom:hover{transform:translateY(-1px);box-shadow:0 6px 16px #10b9814d}.attendance-loading-screen,.attendance-error-screen{min-height:400px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;width:100%}.attendance-spinner{width:45px;height:45px;border:3.5px solid #e2e8f1;border-top:3.5px solid var(--green-main);border-radius:50%;animation:spin .8s linear infinite}.attendance-loading-screen p{font-size:.9rem;color:var(--text-muted);font-weight:600}.attendance-error-screen i{font-size:3rem}.attendance-error-screen h3{margin:0;font-size:1.25rem;font-weight:800;color:var(--text-primary)}.attendance-error-screen p{margin:0;font-size:.88rem;color:var(--text-muted);max-width:320px;text-align:center}@media (max-width: 1024px){.dashboard-grid-layout{grid-template-columns:1fr}}@media (max-width: 768px){.attendance-header-section{flex-direction:column;align-items:flex-start;gap:12px}.kpi-cards-grid{grid-template-columns:1fr}.overall-card{grid-template-columns:1fr;text-align:center}.circular-progress-wrapper{margin:8px 0}.kpi-card-header{align-items:center}.alert-subject-item{flex-direction:column;align-items:flex-start;gap:8px}.subject-alert-metrics{width:100%}.trends-charts-grid{grid-template-columns:1fr}.calendar-cell{aspect-ratio:1.05}}.student-content-container{padding:20px;background:var(--card-bg, #ffffff);border:1px solid var(--border-color, #dbe5f1);border-radius:16px;box-shadow:0 8px 18px #0206170f;margin:0;min-height:calc(100vh - 130px);animation:fadeIn .3s ease-in-out}.student-content-container .content-header h1{color:var(--text-main, #0f172a);margin-top:0;padding-bottom:12px;border-bottom:1px solid var(--border-color, #dbe5f1);font-weight:600}.student-content-container .content-header p{color:var(--text-muted, #64748b);font-size:.96rem;line-height:1.6}.content-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;height:70%;text-align:center;padding:2rem}.content-placeholder i{font-size:5rem;color:#cbd5e0;margin-bottom:20px;transition:transform .3s ease}.content-placeholder i:hover{transform:scale(1.1)}.content-placeholder p{font-size:1.2rem;color:#a0aec0;margin-top:1rem}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;height:70%}.spinner{width:50px;height:50px;border:4px solid rgba(79,70,229,.1);border-top:4px solid #4f46e5;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}.loading-container p{color:#718096;font-size:1.1rem}.filter-section{margin-bottom:2rem;display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.filter-section label{font-weight:600;color:var(--text-main, #0f172a)}.filter-select{padding:.5rem 1rem;border:1px solid var(--border-color, #dbe5f1);border-radius:10px;background-color:var(--card-bg, #ffffff);font-size:1rem;color:var(--text-main, #0f172a);transition:all .2s ease;cursor:pointer}.filter-select:focus{outline:none;border-color:var(--primary-accent, #2563eb);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary-accent, #2563eb) 16%,transparent)}.no-results,.no-notices{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;text-align:center;background-color:#f8fafc;border-radius:8px;margin:2rem 0}.no-results i,.no-notices i{font-size:4rem;color:#cbd5e0;margin-bottom:1rem}.no-results p,.no-notices p{color:#718096;font-size:1.1rem;margin:0}.error-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;text-align:center;background-color:#fff5f5;border-radius:8px;margin:2rem 0;border:1px solid #fed7d7}.error-container i{font-size:4rem;color:#fc8181;margin-bottom:1rem}.error-container p{color:#c53030;font-size:1.1rem;margin:0 0 1.5rem}.retry-btn{padding:.75rem 1.5rem;background-color:#e53e3e;color:#fff;border:none;border-radius:6px;cursor:pointer;font-weight:500;transition:background-color .2s}.retry-btn:hover{background-color:#c53030}.results-controls{margin-bottom:2rem;padding-bottom:1rem;border-bottom:1px solid #e2e8f0}.results-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:1rem;margin-bottom:2rem}.result-card{background:linear-gradient(135deg,#fff,#f8fbff);border-radius:14px;padding:1rem;box-shadow:0 4px 10px #0000000d;transition:all .3s ease;border:1px solid var(--border-color, #dbe5f1)}.result-card:hover{transform:translateY(-3px);box-shadow:0 12px 20px #0000001c}.result-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.result-header h3{margin:0;color:var(--text-main, #0f172a);font-size:1rem;line-height:1.4}.result-header h3 small{font-size:.74rem;font-weight:600;color:var(--text-muted, #64748b)}.grade-badge{padding:.22rem .64rem;border-radius:20px;color:#fff;font-weight:600;font-size:.74rem}.grade-badge.ct-pill{background:linear-gradient(135deg,var(--primary-accent, #2563eb) 0%,var(--primary-accent-dark, #1d4ed8) 100%)}.result-details{margin-bottom:1.5rem}.detail-row{display:flex;justify-content:space-between;margin-bottom:.5rem}.detail-label{color:var(--text-muted, #64748b);font-weight:500}.detail-value{color:var(--text-main, #0f172a);font-weight:500}.marks-section{display:flex;justify-content:space-between;align-items:center}.marks-display{display:flex;align-items:baseline}.marks{font-size:1.55rem;font-weight:700;color:var(--text-main, #0f172a)}.max-marks{font-size:1rem;color:var(--text-muted, #64748b);margin-left:.25rem}.percentage{font-size:1.2rem;font-weight:700;color:var(--primary-accent-dark, #1d4ed8)}.performance-summary{background-color:color-mix(in srgb,var(--primary-accent-light, #eff6ff) 45%,#ffffff 55%);border-radius:14px;border:1px solid var(--border-color, #dbe5f1);padding:1.2rem;margin-top:2rem}.performance-summary h2{margin-top:0;color:#2d3748;font-size:1.5rem;margin-bottom:1.5rem}.summary-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.stat-card{display:flex;align-items:center;background:var(--card-bg, #ffffff);padding:1rem;border-radius:10px;box-shadow:0 2px 6px #0000000d;border:1px solid var(--border-color, #dbe5f1)}.stat-card i{font-size:1.5rem;color:var(--primary-accent-dark, #1d4ed8);margin-right:1rem;background-color:color-mix(in srgb,var(--primary-accent-light, #eff6ff) 75%,#ffffff 25%);width:48px;height:48px;display:flex;align-items:center;justify-content:center;border-radius:12px}.stat-info{display:flex;flex-direction:column}.stat-value{font-size:1.5rem;font-weight:700;color:var(--text-main, #0f172a)}.stat-label{color:var(--text-muted, #64748b);font-size:.875rem}@media (max-width: 768px){.student-content-container{padding:14px;border-radius:12px}.results-grid{grid-template-columns:1fr;gap:10px}.result-card{padding:.9rem}.marks{font-size:1.3rem}}.notices-controls{margin-bottom:2rem;padding-bottom:1rem;border-bottom:1px solid #e2e8f0}.notices-list{display:flex;flex-direction:column;gap:1.5rem;margin-bottom:2rem}.notice-card{background:#fff;border-radius:10px;padding:1.5rem;box-shadow:0 4px 6px #0000000d;transition:all .3s ease;border:1px solid #e2e8f0}.notice-card:hover{transform:translateY(-2px);box-shadow:0 6px 12px #00000014}.notice-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;flex-wrap:wrap;gap:.5rem}.notice-meta{display:flex;align-items:center;gap:.75rem}.notice-meta i{color:#4f46e5;font-size:1.25rem}.notice-category{background-color:#eef2ff;color:#4f46e5;padding:.25rem .75rem;border-radius:20px;font-size:.875rem;font-weight:500}.notice-priority{font-weight:500;font-size:.875rem}.notice-date{color:#718096;font-size:.875rem}.notice-title{color:#2d3748;margin:0 0 1rem;font-size:1.25rem}.notice-content{color:#4a5568;line-height:1.6;margin:0 0 1rem}.notice-footer{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #e2e8f0;padding-top:1rem}.notice-author{color:#718096;font-weight:500}.notices-summary{background-color:#f8fafc;border-radius:10px;padding:1.5rem;margin-top:2rem}.notices-summary h2{margin-top:0;color:#2d3748;font-size:1.5rem;margin-bottom:1.5rem}.mark-as-read-btn{padding:.5rem 1rem;background-color:#4f46e5;color:#fff;border:none;border-radius:6px;cursor:pointer;font-weight:500;transition:background-color .2s;font-size:.9rem}.mark-as-read-btn:hover{background-color:#4338ca}.notice-card.unread{border-left:4px solid #4f46e5;background:linear-gradient(to right,#fcfdff,#fff)}.notice-source-tag{background-color:#f1f5f9;color:#334155;padding:.2rem .6rem;border-radius:4px;font-size:.75rem;font-weight:700;border:1px solid #e2e8f0;margin-right:4px;display:inline-block}.student-badge{font-size:.75rem;font-weight:600;padding:.2rem .65rem;border-radius:20px;text-transform:capitalize;display:inline-flex;align-items:center;margin-right:6px}.student-badge.general{background-color:#f1f5f9;color:#475569;border:1px solid #cbd5e1}.student-badge.urgent{background-color:#fef2f2;color:#ef4444;border:1px solid #fca5a5;animation:noticePulse 2.5s infinite}@keyframes noticePulse{0%{transform:scale(1)}50%{transform:scale(1.02)}to{transform:scale(1)}}.student-badge.exam{background-color:#eef2ff;color:#4f46e5;border:1px solid #c7d2fe}.student-badge.fee{background-color:#fffbeb;color:#d97706;border:1px solid #fde68a}.student-badge.event{background-color:#ecfdf5;color:#059669;border:1px solid #a7f3d0}.student-badge.holiday{background-color:#fdf2f8;color:#db2777;border:1px solid #fbcfe8}.student-badge.scholarship{background-color:#ecfeff;color:#0891b2;border:1px solid #a5f3fc}.student-badge.circular{background-color:#f5f3ff;color:#7c3aed;border:1px solid #ddd6fe}.notice-unread-dot{display:inline-flex;align-items:center;gap:4px;font-size:.72rem;color:#10b981;font-weight:700;background-color:#ecfdf5;padding:.15rem .5rem;border-radius:4px;border:1px solid #a7f3d0}.notice-unread-dot .dot{width:6px;height:6px;background-color:#10b981;border-radius:50%;display:inline-block;box-shadow:0 0 0 2px #10b98166}.student-notice-attachments{margin:1.2rem 0;padding:1rem;background-color:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;display:flex;flex-direction:column;gap:.6rem}.student-notice-attachments .attachments-title{font-size:.82rem;font-weight:700;color:#475569;display:flex;align-items:center;gap:.4rem}.student-notice-attachments .attachments-list{display:flex;flex-direction:column;gap:.5rem}.attachment-download-btn{display:flex;align-items:center;gap:.75rem;padding:.65rem .85rem;background-color:#fff;border:1px solid #e2e8f0;border-radius:8px;text-align:left;font-size:.82rem;color:#1e293b;cursor:pointer;transition:all .15s ease-in-out;width:100%;box-sizing:border-box}.attachment-download-btn:hover{border-color:#4f46e5;background-color:#f5f3ff;box-shadow:0 2px 6px #4f46e514}.attachment-download-btn i{font-size:1.15rem}.attachment-download-btn .filename-text{flex-grow:1;font-weight:550;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#334155}.attachment-download-btn .filesize-text{color:#64748b;font-size:.75rem;margin-right:.5rem}.attachment-download-btn .download-arrow{color:#94a3b8;font-size:.95rem;transition:transform .2s,color .2s}.attachment-download-btn:hover .download-arrow{color:#4f46e5;transform:translateY(1.5px)}.mock-exam-shell{min-height:100%;padding:24px;background:var(--dash-bg, #f9fafb);color:var(--text-primary, #111827);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.mock-exam-page{background:var(--card-bg, #ffffff);border:1px solid var(--card-border, #e5e7eb);border-radius:16px;padding:24px;box-shadow:0 4px 20px #00000005;margin-bottom:24px}.mock-exam-hero{background:linear-gradient(135deg,var(--primary-light, rgba(16, 185, 129, .08)) 0%,rgba(255,255,255,0) 100%);border:1px solid var(--card-border, #e5e7eb);border-radius:16px;padding:24px;margin-bottom:24px;display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap}.mock-exam-title{margin:0;font-size:1.85rem;font-weight:800;color:var(--primary-color, #10b981);letter-spacing:-.02em}.mock-exam-subtitle{margin:6px 0 0;font-size:.95rem;color:var(--text-secondary, #6b7280);line-height:1.5}.mock-exam-pill{display:inline-flex;align-items:center;gap:6px;background:var(--primary-light, rgba(16, 185, 129, .1));color:var(--primary-color, #10b981);border-radius:999px;padding:6px 14px;font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px}.mock-exam-chip{display:inline-flex;align-items:center;gap:4px;border-radius:8px;padding:4px 10px;font-size:.75rem;font-weight:700;text-transform:uppercase}.mock-exam-chip.draft{background:#ef44441a;color:#ef4444}.mock-exam-chip.published{background:#10b9811a;color:#10b981}.mock-exam-chip.upcoming{background:#f59e0b1a;color:#f59e0b}.mock-exam-chip.expired{background:#6b72801a;color:#6b7280}.mock-exam-grid{display:grid;gap:20px;margin-bottom:24px}.mock-exam-grid.cols-3{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.mock-exam-grid.cols-2{grid-template-columns:repeat(auto-fit,minmax(360px,1fr))}.mock-exam-card{background:var(--card-bg, #ffffff);border:1px solid var(--card-border, #e5e7eb);border-radius:14px;padding:20px;box-shadow:0 4px 12px #00000003;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.mock-exam-card:hover{transform:translateY(-2px);box-shadow:0 10px 20px #00000008;border-color:var(--primary-color, #10b981)}.mock-exam-card-title{font-size:.85rem;font-weight:700;text-transform:uppercase;color:var(--text-secondary, #6b7280);letter-spacing:.05em;margin-bottom:6px}.mock-exam-card strong{font-size:1.75rem;font-weight:800;color:var(--text-primary, #111827);display:block}.mock-exam-toolbar{display:flex;gap:16px;align-items:center;flex-wrap:wrap;background:var(--card-bg, #ffffff);border:1px solid var(--card-border, #e5e7eb);border-radius:12px;padding:16px;margin-bottom:24px}.mock-exam-field{display:flex;flex-direction:column;gap:6px;flex:1 1 200px}.mock-exam-field label{font-size:.82rem;font-weight:700;color:var(--text-primary, #374151)}.mock-exam-input,.mock-exam-select,.mock-exam-textarea{width:100%;background:var(--card-bg, #ffffff);color:var(--text-primary, #111827);border:1px solid var(--card-border, #d1d5db);border-radius:10px;padding:10px 14px;font-size:.9rem;outline:none;transition:all .2s ease}.mock-exam-input:focus,.mock-exam-select:focus,.mock-exam-textarea:focus{border-color:var(--primary-color, #10b981);box-shadow:0 0 0 3px var(--primary-light, rgba(16, 185, 129, .15))}.mock-exam-textarea{min-height:100px;resize:vertical}.mock-exam-btn,.mock-exam-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:10px;padding:10px 20px;font-size:.9rem;font-weight:700;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);text-decoration:none}.mock-exam-btn.primary,.mock-exam-button{background:var(--primary-color, #10b981)!important;color:#fff!important}.mock-exam-btn.primary:hover,.mock-exam-button:hover{background:var(--primary-accent-dark, #059669)!important;transform:translateY(-1px);box-shadow:0 4px 12px #10b98133}.mock-exam-btn.secondary,.mock-exam-button.secondary{background:var(--primary-light, rgba(16, 185, 129, .06))!important;color:var(--primary-color, #10b981)!important;border:1px solid var(--primary-color, #10b981)!important}.mock-exam-btn.secondary:hover,.mock-exam-button.secondary:hover{background:var(--primary-light, rgba(16, 185, 129, .12))!important;transform:translateY(-1px)}.mock-exam-btn.ghost,.mock-exam-button.ghost{background:transparent!important;color:var(--text-secondary, #6b7280)!important;border:1px solid var(--card-border, #e5e7eb)!important}.mock-exam-btn.ghost:hover,.mock-exam-button.ghost:hover{background:#6b72800d!important;color:var(--text-primary, #111827)!important}.mock-exam-btn.danger,.mock-exam-button.danger{background:#ef4444!important;color:#fff!important}.mock-exam-btn.danger:hover,.mock-exam-button.danger:hover{background:#dc2626!important;box-shadow:0 4px 12px #ef444433}.mock-exam-btn:disabled,.mock-exam-button:disabled{opacity:.5;cursor:not-allowed;transform:none!important;box-shadow:none!important}.mock-exam-table{width:100%;overflow-x:auto;border-radius:12px;border:1px solid var(--card-border, #e5e7eb);background:var(--card-bg, #ffffff)}.mock-exam-table table{width:100%;border-collapse:collapse;margin:0}.mock-exam-table th{background:var(--primary-light, rgba(16, 185, 129, .03));color:var(--text-primary, #1f2937);font-weight:700;font-size:.85rem;text-transform:uppercase;letter-spacing:.03em;padding:14px 16px;border-bottom:1px solid var(--card-border, #e5e7eb)}.mock-exam-table td{padding:14px 16px;font-size:.9rem;color:var(--text-primary, #374151);border-bottom:1px solid var(--card-border, #e5e7eb);vertical-align:middle}.mock-exam-table tr:last-child td{border-bottom:0}.mock-exam-table tr:hover td{background:#10b98103}.mock-exam-form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px;margin-bottom:24px}.mock-exam-question-card{background:var(--card-bg, #ffffff);border:1px solid var(--card-border, #e5e7eb);border-radius:14px;padding:20px;margin-bottom:18px;box-shadow:0 4px 10px #00000001}.mock-exam-question-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;gap:16px;flex-wrap:wrap}.mock-exam-question-top strong{font-size:1.05rem;color:var(--primary-color, #10b981)}.mock-exam-question-meta{font-size:.85rem;color:var(--text-secondary, #6b7280);background:var(--primary-light, rgba(16, 185, 129, .04));padding:4px 10px;border-radius:6px;border:1px solid var(--card-border, #e5e7eb)}.mock-exam-layout{display:grid;grid-template-columns:280px 1fr;gap:24px;align-items:start}@media (max-width: 992px){.mock-exam-layout{grid-template-columns:1fr}}.mock-exam-palette{background:var(--card-bg, #ffffff);border:1px solid var(--card-border, #e5e7eb);border-radius:16px;padding:20px;box-shadow:0 4px 20px #00000005}.mock-exam-palette-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin-bottom:20px}.mock-exam-palette-btn{border:1px solid var(--card-border, #d1d5db);background:#f3f4f6;color:#1f2937;font-weight:700;font-size:.88rem;border-radius:8px;padding:10px 0;cursor:pointer;transition:all .2s ease;text-align:center}.mock-exam-palette-btn.active{box-shadow:0 0 0 2px var(--primary-color, #10b981)}.mock-exam-palette-btn.answered{background:#10b981!important;color:#fff!important;border-color:#10b981!important}.mock-exam-palette-btn.unanswered{background:#ef4444!important;color:#fff!important;border-color:#ef4444!important}.mock-exam-palette-btn.review{background:#8b5cf6!important;color:#fff!important;border-color:#8b5cf6!important}.mock-exam-palette-btn.not-visited{background:#e5e7eb!important;color:#374151!important;border-color:#d1d5db!important}.mock-exam-legend{font-size:.8rem;display:flex;flex-direction:column;gap:8px;border-top:1px solid var(--card-border, #e5e7eb);padding-top:14px}.mock-exam-legend-item{display:flex;align-items:center;gap:8px;font-weight:600;color:var(--text-secondary, #4b5563)}.mock-exam-legend-dot{width:14px;height:14px;border-radius:4px}.mock-exam-legend-dot.answered{background:#10b981}.mock-exam-legend-dot.unanswered{background:#ef4444}.mock-exam-legend-dot.review{background:#8b5cf6}.mock-exam-legend-dot.notvisited{background:#e5e7eb;border:1px solid #d1d5db}.mock-exam-option-card{display:flex;align-items:center;gap:12px;padding:16px;border-radius:12px;border:1px solid var(--card-border, #d1d5db);background:var(--card-bg, #ffffff);cursor:pointer;margin-bottom:12px;transition:all .2s cubic-bezier(.4,0,.2,1);font-weight:600}.mock-exam-option-card:hover{background:var(--primary-light, rgba(16, 185, 129, .03));border-color:var(--primary-color, #10b981)}.mock-exam-option-card.selected{background:var(--primary-light, rgba(16, 185, 129, .08));border-color:var(--primary-color, #10b981);color:var(--primary-color, #10b981)}.mock-exam-option-card input[type=radio]{width:18px;height:18px;accent-color:var(--primary-color, #10b981);cursor:pointer}.mock-exam-analytics-card{background:var(--card-bg, #ffffff);border:1px solid var(--card-border, #e5e7eb);border-radius:16px;padding:20px;box-shadow:0 4px 12px #00000001}.topper-card-wrapper{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:24px}.topper-card{background:linear-gradient(145deg,#fff,#f3f4f6);border:1px solid #e5e7eb;border-radius:16px;padding:20px;text-align:center;position:relative;box-shadow:0 4px 10px #00000005}.topper-card.rank-1{background:linear-gradient(145deg,#fffbeb,#fef3c7);border-color:#f59e0b}.topper-card.rank-2{background:linear-gradient(145deg,#f9fafb,#f3f4f6);border-color:#9ca3af}.topper-card.rank-3{background:linear-gradient(145deg,#fff7ed,#ffedd5);border-color:#ca8a04}.topper-medal{font-size:2.2rem;margin-bottom:8px;display:inline-block}.topper-name{font-weight:800;font-size:1.15rem;color:#1f2937;margin-bottom:4px}.topper-roll{font-size:.82rem;color:#6b7280;margin-bottom:8px}.topper-score{font-size:1.35rem;font-weight:800;color:var(--primary-color, #10b981)}.mock-exam-chart-container{margin-top:16px}.mock-exam-chart-row{display:flex;align-items:center;gap:16px;margin-bottom:12px}.mock-exam-chart-label{width:140px;font-size:.85rem;font-weight:700;color:var(--text-primary, #374151);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mock-exam-chart-bar-bg{flex:1;height:16px;background:#e5e7eb;border-radius:8px;overflow:hidden}.mock-exam-chart-bar-fill{height:100%;background:var(--primary-color, #10b981);border-radius:8px;transition:width .8s ease-in-out}.mock-exam-chart-value{width:60px;text-align:right;font-size:.85rem;font-weight:800;color:var(--text-primary, #111827)}.mock-exam-tabs{display:flex;gap:8px;border-bottom:2px solid var(--card-border, #e5e7eb);margin-bottom:24px;overflow-x:auto}.mock-exam-tab{border:0;background:transparent;padding:12px 18px;font-weight:700;font-size:.95rem;color:var(--text-secondary, #6b7280);cursor:pointer;position:relative;white-space:nowrap}.mock-exam-tab.active{color:var(--primary-color, #10b981)}.mock-exam-tab.active:after{content:"";position:absolute;bottom:-2px;left:0;right:0;height:2px;background:var(--primary-color, #10b981)}.rich-editor-bar{display:flex;gap:4px;background:#f3f4f6;border:1px solid #d1d5db;border-bottom:0;border-radius:8px 8px 0 0;padding:6px}.rich-editor-btn{background:#fff;border:1px solid #d1d5db;border-radius:4px;width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-weight:700;color:#374151;font-size:.85rem}.rich-editor-btn:hover{background:#f9fafb}.rich-editor-textarea{border-radius:0 0 8px 8px!important}@media print{body *{visibility:hidden}.print-only-container,.print-only-container *{visibility:visible}.print-only-container{position:absolute;left:0;top:0;width:100%;padding:0;margin:0;background:#fff!important;color:#000!important}.no-print{display:none!important}}.print-only-container{background:#fff;padding:40px;max-width:800px;margin:0 auto;border:1px solid #d1d5db;border-radius:0;box-shadow:none}.print-header{display:flex;align-items:center;justify-content:space-between;border-bottom:2px solid #000000;padding-bottom:20px;margin-bottom:30px}.print-logo-dummy{width:70px;height:70px;border-radius:50%;background:#374151;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:1.5rem}.print-college-info{text-align:center;flex:1;padding:0 20px}.print-college-name{font-size:1.45rem;font-weight:800;color:#000;margin:0;text-transform:uppercase}.print-college-address{font-size:.8rem;color:#4b5563;margin:4px 0 0}.print-doc-title{text-align:center;font-size:1.25rem;font-weight:800;margin:20px 0;text-decoration:underline;text-transform:uppercase}.print-meta-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-bottom:24px;font-size:.9rem;line-height:1.6}.print-signature-row{display:flex;justify-content:space-between;margin-top:60px;padding-top:30px;border-top:1px dashed #d1d5db}.print-signature-box{text-align:center;width:200px}.print-signature-line{border-top:1px solid #000000;margin-top:40px;margin-bottom:8px}.print-signature-title{font-size:.85rem;font-weight:700;color:#374151}.custom-form-group{display:flex;flex-direction:column;gap:8px}.badge-wrapper{display:inline-flex;gap:4px;margin-top:8px}.badge-sec{font-size:.72rem;font-weight:800;padding:2px 8px;border-radius:4px;background:#f3f4f6;color:#4b5563;border:1px solid #e5e7eb}.questions-workspace{display:grid;grid-template-columns:340px 1fr;gap:24px;align-items:start}@media (max-width: 992px){.questions-workspace{grid-template-columns:1fr}}.questions-sidebar{background:var(--card-bg, #ffffff);border:1px solid var(--card-border, #e5e7eb);border-radius:16px;padding:18px;box-shadow:0 4px 12px #00000003;display:flex;flex-direction:column;gap:16px}.questions-list-scrollable{max-height:520px;overflow-y:auto;display:flex;flex-direction:column;gap:10px;padding-right:4px}.question-nav-item{padding:12px;border-radius:10px;border:1px solid var(--card-border, #e5e7eb);background:#f9fafb;cursor:pointer;transition:all .2s ease;position:relative;display:flex;justify-content:space-between;align-items:center;gap:10px}.question-nav-item:hover{border-color:var(--primary-color, #10b981);background:#10b98105}.question-nav-item.active{background:var(--primary-light, rgba(16, 185, 129, .07));border-color:var(--primary-color, #10b981);box-shadow:0 0 0 1px var(--primary-color, #10b981)}.question-nav-details{flex:1;min-width:0}.question-nav-text{font-weight:700;font-size:.88rem;color:var(--text-primary, #111827);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:4px}.question-nav-meta{display:flex;gap:6px;font-size:.72rem;font-weight:800}.reorder-button-group{display:flex;flex-direction:column;gap:4px}.reorder-btn{border:0;background:transparent;padding:2px 4px;color:var(--text-secondary, #9ca3af);cursor:pointer;font-size:.85rem;transition:color .15s ease;line-height:1}.reorder-btn:hover{color:var(--primary-color, #10b981)}.workspace-right-pane{background:var(--card-bg, #ffffff);border:1px solid var(--card-border, #e5e7eb);border-radius:16px;padding:24px;box-shadow:0 4px 12px #00000003}.autosave-badge-container{display:inline-flex;align-items:center;gap:6px;font-size:.8rem;font-weight:700;color:#10b981}.autosave-dot{width:8px;height:8px;border-radius:50%;background-color:#10b981;animation:autosavePulse 1.6s infinite ease-in-out}@keyframes autosavePulse{0%{transform:scale(.9);opacity:.4}50%{transform:scale(1.15);opacity:1}to{transform:scale(.9);opacity:.4}}.sticky-action-bar{position:sticky;bottom:0;background:var(--card-bg, #ffffff);border-top:1px solid var(--card-border, #e5e7eb);padding:16px 24px;margin-left:-24px;margin-right:-24px;margin-bottom:-24px;border-bottom-left-radius:16px;border-bottom-right-radius:16px;display:flex;justify-content:space-between;align-items:center;gap:16px;z-index:10}.options-editor-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-top:12px}@media (max-width: 768px){.options-editor-grid{grid-template-columns:1fr}}.option-editor-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:16px;box-shadow:0 2px 8px #00000005;transition:all .25s ease;display:flex;flex-direction:column;gap:12px}.option-editor-card:hover{border-color:var(--primary-color, #10b981);box-shadow:0 4px 12px #0000000d}.option-editor-header{display:flex;justify-content:space-between;align-items:center}.option-label-badge{background:var(--primary-light, rgba(16, 185, 129, .08));color:var(--primary-color, #10b981);font-weight:800;font-size:.85rem;padding:4px 10px;border-radius:6px}.drag-drop-zone{border:2px dashed #d1d5db;border-radius:8px;background:#f9fafb;padding:16px;text-align:center;cursor:pointer;transition:all .25s ease;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px}.drag-drop-zone.dragover{border-color:var(--primary-color, #10b981);background:var(--primary-light, rgba(16, 185, 129, .05));transform:scale(1.02)}.drag-drop-zone i{font-size:1.5rem;color:#9ca3af}.drag-drop-zone p{margin:0;font-size:.8rem;color:#6b7280}.image-thumbnail-preview{position:relative;border-radius:8px;overflow:hidden;border:1px solid #e5e7eb;background:#f3f4f6;padding:8px;display:flex;align-items:center;justify-content:center}.image-thumbnail-preview img{max-height:120px;max-width:100%;border-radius:4px;object-fit:contain}.image-action-overlay{position:absolute;top:8px;right:8px;display:flex;gap:4px}.image-action-btn{background:#000000a6;color:#fff;border:0;border-radius:50%;width:28px;height:28px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .2s;font-size:.8rem}.image-action-btn:hover{background:#000000d9}.image-action-btn.delete:hover{background:#ef4444}.math-expression-panel{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:12px;margin-top:8px}.math-symbols-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(40px,1fr));gap:6px;margin-bottom:8px}.math-symbol-btn{background:#fff;border:1px solid #d1d5db;border-radius:6px;padding:6px 0;font-size:.9rem;font-weight:700;cursor:pointer;text-align:center;transition:all .15s ease}.math-symbol-btn:hover{border-color:var(--primary-color, #10b981);background:var(--primary-light, rgba(16, 185, 129, .05));color:var(--primary-color, #10b981)}.code-block-wrapper{background:#1e1e1e;border-radius:8px;padding:12px 16px;color:#d4d4d4;font-family:Consolas,Courier New,Courier,monospace;font-size:.85rem;margin:12px 0;position:relative;overflow-x:auto}.code-block-header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #333333;padding-bottom:6px;margin-bottom:8px;font-size:.75rem;text-transform:uppercase;color:#858585}.zoom-modal-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:10000;animation:fadeIn .25s ease-out}.zoom-modal-content{max-width:90%;max-height:90%;background:#fff;border-radius:12px;padding:16px;position:relative;display:flex;flex-direction:column;align-items:center;animation:scaleIn .25s cubic-bezier(.34,1.56,.64,1)}.zoom-modal-image{max-width:100%;max-height:80vh;object-fit:contain;border-radius:8px}.zoom-modal-close{position:absolute;top:-12px;right:-12px;background:#ef4444;color:#fff;border:0;border-radius:50%;width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 4px 10px #0000004d}.image-editor-modal{position:fixed;top:0;left:0;right:0;bottom:0;background:#111827d9;display:flex;align-items:center;justify-content:center;z-index:10000;padding:24px}.image-editor-container{background:#fff;border-radius:16px;padding:24px;width:100%;max-width:800px;display:flex;flex-direction:column;gap:16px;max-height:90vh;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.image-editor-workspace{flex:1;background:#f3f4f6;border-radius:12px;overflow:auto;display:flex;align-items:center;justify-content:center;min-height:300px;max-height:50vh;position:relative;border:1px solid #e5e7eb}.image-editor-canvas{max-width:100%;max-height:100%;object-fit:contain;box-shadow:0 4px 12px #0000001a;background:#fff}.image-editor-toolbar{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;background:#f9fafb;padding:12px;border-radius:10px;border:1px solid #e5e7eb}.image-editor-tools{display:flex;gap:8px;align-items:center}.student-option-card-wrapper{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-top:16px}@media (max-width: 768px){.student-option-card-wrapper{grid-template-columns:1fr}}.student-option-image-container{width:100%;border-radius:8px;overflow:hidden;background:#f9fafb;border:1px solid #e5e7eb;margin-top:8px;display:flex;align-items:center;justify-content:center;padding:6px;cursor:zoom-in}.student-option-image-container img{max-height:160px;max-width:100%;object-fit:contain;border-radius:4px}.multiple-images-list{display:flex;flex-wrap:wrap;gap:12px;margin:12px 0}.question-image-container{position:relative;border-radius:10px;overflow:hidden;border:1px solid #e5e7eb;background:#f9fafb;padding:8px;display:flex;align-items:center;justify-content:center;cursor:zoom-in;transition:transform .2s;box-shadow:0 2px 6px #00000005}.question-image-container:hover{transform:translateY(-2px);box-shadow:0 4px 10px #0000000d}.question-image-container img{max-height:200px;max-width:100%;object-fit:contain;border-radius:6px}.practical-exams-container{padding:20px;max-width:1200px;margin:0 auto}.exams-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:30px}.exams-header h2{font-size:28px;font-weight:600;color:#333;margin:0 0 8px}.exams-header p{font-size:14px;color:#666;margin:0}.student-exam-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:20px}.summary-card{background:#fff;border:1px solid #e5e7eb;border-radius:10px;padding:12px 14px;display:flex;justify-content:space-between;align-items:center}.summary-label{color:#666;font-size:13px;font-weight:600}.summary-value{color:var(--primary-accent-dark, #059669);font-size:20px;font-weight:700}.empty-state{text-align:center;padding:60px 20px;background:#fff;border-radius:8px;color:#999}.exams-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:20px}.exam-card{background:#fff;border-radius:8px;box-shadow:0 2px 8px #00000014;overflow:hidden;transition:all .3s ease;display:flex;flex-direction:column}.exam-card:hover{box-shadow:0 4px 16px #0000001f;transform:translateY(-2px)}.card-header{padding:16px;border-bottom:2px solid var(--primary-accent, #10b981);display:flex;justify-content:space-between;align-items:start;gap:10px}.card-header h3{font-size:18px;font-weight:600;color:#333;margin:0;flex:1}.marks-badge{display:inline-block;padding:4px 12px;background:var(--primary-accent, #10b981);color:#fff;border-radius:4px;font-size:12px;font-weight:600;white-space:nowrap}.card-body{padding:16px;flex:1;display:flex;flex-direction:column;gap:16px}.exam-info{display:flex;flex-direction:column;gap:8px;font-size:13px}.info-row{display:flex;justify-content:space-between;padding:6px 0;border-bottom:1px solid #f0f0f0}.info-row .label{font-weight:600;color:#666}.info-row .value{color:#333;text-align:right}.card-actions{margin-top:auto}.btn{width:100%;padding:10px 16px;border:none;border-radius:4px;font-size:14px;font-weight:500;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:all .2s ease}.btn-outline{border:1px solid var(--primary-accent, #10b981);color:var(--primary-accent, #10b981);background:#fff;width:auto}.btn-outline:hover{background:var(--primary-accent, #10b981);color:#fff}.btn-primary:hover{background:var(--primary-accent-dark, #059669)}@media (max-width: 768px){.exams-header{flex-direction:column;align-items:flex-start}.student-exam-summary,.exams-grid{grid-template-columns:1fr}.card-header{flex-direction:column;align-items:flex-start}.marks-badge{align-self:flex-start}}.upload-container{padding:20px;max-width:1200px;margin:0 auto;min-height:100vh}.upload-wrapper{background:#fff;border-radius:8px;box-shadow:0 2px 8px #00000014;overflow:hidden}.upload-header{padding:20px;border-bottom:1px solid #e9ecef;display:flex;align-items:center;gap:16px}.btn-back{padding:8px 16px;border:none;background:var(--primary-accent, #10b981);color:#fff;border-radius:4px;cursor:pointer;display:flex;align-items:center;gap:6px;font-size:14px;font-weight:500;transition:background .2s ease}.upload-header .page-title{font-size:24px;font-weight:600;color:#333;margin:0}.upload-content{display:grid;grid-template-columns:1fr 1fr;gap:30px;padding:30px;align-items:start}.exam-details{display:flex;flex-direction:column;gap:20px}.exam-details h2{font-size:22px;font-weight:600;color:#333;margin:0;padding-bottom:16px;border-bottom:2px solid var(--primary-accent, #10b981)}.details-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.detail-item{display:flex;flex-direction:column;gap:4px;padding:12px;background:#f8f9fa;border-radius:4px}.detail-label{font-size:12px;font-weight:600;color:#666;text-transform:uppercase}.detail-value{font-size:16px;font-weight:600;color:#333}.exam-description{padding:16px;background:#f0f7ff;border-left:4px solid var(--primary-accent, #10b981);border-radius:4px}.exam-description h3{font-size:14px;font-weight:600;color:#333;margin:0 0 8px}.exam-description p{font-size:13px;color:#666;margin:0;line-height:1.5}.exam-questions{display:flex;flex-direction:column;gap:12px}.exam-questions h3{font-size:14px;font-weight:600;color:#333;margin:0}.questions-list{display:flex;flex-direction:column;gap:10px;max-height:400px;overflow-y:auto}.question-item{display:flex;gap:12px;padding:12px;background:#f8f9fa;border-radius:4px;border-left:3px solid var(--primary-accent, #10b981)}.single-question{border-left-width:5px;background:#f5fff9}.question-empty{padding:12px;border-radius:6px;background:#fff8e1;color:#7a5a00;font-size:13px;border-left:4px solid #ffca28}.existing-submission-note{display:flex;align-items:center;gap:8px;font-size:13px;color:#155724;background:#e8f5e9;border:1px solid #c8e6c9;border-radius:6px;padding:10px 12px}.question-number{flex-shrink:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:var(--primary-accent, #10b981);color:#fff;border-radius:4px;font-weight:600;font-size:12px}.question-details{flex:1;display:flex;flex-direction:column;gap:6px}.question-text{font-size:13px;color:#333;margin:0;line-height:1.4}.question-meta{display:flex;gap:12px;font-size:11px}.question-meta .marks{display:flex;align-items:center;gap:4px;color:#666;font-weight:500}.question-meta .difficulty{padding:2px 8px;border-radius:3px;font-weight:600;text-transform:uppercase}.question-meta .difficulty[data-difficulty=easy]{background:#d4edda;color:#155724}.question-meta .difficulty[data-difficulty=medium]{background:#fff3cd;color:#856404}.question-meta .difficulty[data-difficulty=hard]{background:#f8d7da;color:#721c24}.upload-form-section{position:sticky;top:20px}.upload-form{display:flex;flex-direction:column;gap:16px;padding:20px;background:#f8f9fa;border-radius:8px}.form-title{font-size:18px;font-weight:600;color:#333;margin:0}.alert{padding:12px 16px;border-radius:6px;display:flex;align-items:center;gap:10px;font-size:13px}.file-input-wrapper{position:relative;display:flex}.file-input{display:none}.file-label{flex:1;padding:30px 20px;border:2px dashed var(--primary-accent, #10b981);border-radius:8px;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:10px;background:#fff;transition:all .2s ease}.file-label:hover,.file-label.active{background:#f0f7ff;border-color:var(--primary-accent-dark, #059669)}.file-icon{font-size:32px;color:var(--primary-accent, #10b981)}.file-text{text-align:center}.file-title{font-size:14px;font-weight:600;color:#333;margin:0}.file-subtitle{font-size:12px;color:#999;margin:4px 0 0}.selected-file{display:flex;align-items:center;justify-content:space-between;padding:12px;background:#e8f5e9;border-radius:6px;border-left:4px solid var(--primary-accent, #10b981)}.file-info{display:flex;align-items:center;gap:10px;color:#333;font-size:13px}.file-info i{font-size:18px;color:var(--primary-accent, #10b981)}.btn-remove{padding:6px;border:none;background:none;color:#999;cursor:pointer;font-size:18px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s ease}.btn-remove:hover{background:#0000001a;color:#333}.btn-remove:disabled{opacity:.5;cursor:not-allowed}.btn{padding:12px 16px;border:none;border-radius:4px;font-size:14px;font-weight:500;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:all .2s ease}.btn-submit{width:100%;padding:12px}.form-note{font-size:12px;color:#666;margin:0;padding:10px;background:#fff;border-left:3px solid #ffc107;border-radius:4px;display:flex;align-items:center;gap:8px}.form-note i{flex-shrink:0}.error-state{text-align:center;padding:60px 20px;background:#fff;border-radius:8px;color:#999}.error-state i{font-size:48px;display:block;margin-bottom:16px;opacity:.3}.error-state p{font-size:16px;margin:0 0 20px}@media (max-width: 1024px){.upload-content{grid-template-columns:1fr}.upload-form-section{position:static}}@media (max-width: 768px){.upload-container{padding:10px}.upload-header{padding:16px;flex-direction:column;align-items:flex-start}.upload-header .page-title{font-size:20px}.upload-content{padding:16px;gap:20px}.details-grid{grid-template-columns:1fr}.upload-form{padding:16px}}.chat-page-shell{padding:.85rem;height:100%;font-family:Inter,system-ui,sans-serif}.chat-layout{max-width:1340px;margin:0 auto;height:calc(100vh - 90px);display:grid;grid-template-columns:340px minmax(0,1fr);gap:.85rem}.chat-list-panel,.chat-window-panel{background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 24px #0f172a0f;overflow:hidden;display:flex;flex-direction:column}.chat-panel-head{padding:.9rem 1rem .75rem;border-bottom:1px solid #f1f5f9;display:flex;align-items:center;justify-content:space-between;background:linear-gradient(135deg,#fff,#f8fafc)}.chat-panel-head-left{display:flex;align-items:center;gap:.5rem}.chat-panel-icon{width:18px;height:18px;color:var(--app-header-bg, #3b82f6)}.chat-panel-head h2{margin:0;font-size:1rem;font-weight:700;color:#0f172a;letter-spacing:-.01em}.chat-panel-head-right{display:flex;align-items:center;gap:.5rem}.chat-count-badge{background:#f1f5f9;color:#64748b;font-size:.72rem;font-weight:600;padding:.18rem .5rem;border-radius:999px;border:1px solid #e2e8f0}.archive-toggle-btn{display:flex;align-items:center;gap:.3rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:7px;color:#64748b;font-size:.72rem;font-weight:600;padding:.28rem .55rem;cursor:pointer;transition:all .15s ease;white-space:nowrap}.archive-toggle-btn:hover{background:#edf2f7;border-color:#cbd5e1;color:#334155}.archive-toggle-btn.active{background:#fef3c7;border-color:#f59e0b;color:#92400e}.chat-search-bar{padding:.65rem .85rem;border-bottom:1px solid #f1f5f9;display:flex;flex-direction:column;gap:.5rem}.chat-search-input-wrap{position:relative;display:flex;align-items:center}.chat-search-icon{position:absolute;left:.65rem;width:14px;height:14px;color:#94a3b8;pointer-events:none;flex-shrink:0}.chat-search-input-wrap input{width:100%;border:1.5px solid #e2e8f0;border-radius:10px;background:#f8fafc;color:#0f172a;font-size:.83rem;font-family:inherit;padding:.5rem 2rem .5rem 2.2rem;outline:none;transition:border-color .15s,background .15s,box-shadow .15s;box-sizing:border-box}.chat-search-input-wrap input:focus{border-color:var(--app-header-bg, #3b82f6);background:#fff;box-shadow:0 0 0 3px #3b82f61a}.chat-search-input-wrap input::placeholder{color:#b0b8c8}.chat-search-clear{position:absolute;right:.5rem;background:none;border:none;color:#94a3b8;font-size:.7rem;cursor:pointer;padding:.2rem .3rem;border-radius:4px;line-height:1}.chat-search-clear:hover{color:#475569}.chat-search-bar select{width:100%;border:1.5px solid #e2e8f0;border-radius:10px;background:#f8fafc;color:#334155;font-size:.8rem;font-family:inherit;padding:.45rem .65rem;outline:none;cursor:pointer;transition:border-color .15s}.chat-search-bar select:focus{border-color:var(--app-header-bg, #3b82f6);box-shadow:0 0 0 3px #3b82f61a}.chat-action-row{padding:.5rem .85rem;border-bottom:1px solid #f1f5f9;display:flex;gap:.5rem}.chat-action-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:.4rem;border:1.5px solid;border-radius:9px;font-size:.78rem;font-weight:600;font-family:inherit;padding:.42rem .7rem;cursor:pointer;transition:all .15s ease}.chat-action-btn.primary{border-color:var(--app-header-bg, #3b82f6);background:#eff6ff;color:var(--app-header-bg, #2563eb)}.chat-action-btn.primary:hover,.chat-action-btn.primary.active{background:var(--app-header-bg, #3b82f6);color:#fff}.directory-panel{border-bottom:1px solid #f1f5f9;background:#fafcff;padding:.65rem .85rem;display:flex;flex-direction:column;gap:.5rem}.directory-panel-title{display:flex;align-items:center;gap:.35rem;font-size:.78rem;font-weight:700;color:#475569;text-transform:uppercase;letter-spacing:.04em}.directory-search-wrap{position:relative;display:flex;align-items:center}.dir-search-icon{position:absolute;left:.6rem;width:13px;height:13px;color:#94a3b8;pointer-events:none}.directory-search-wrap input{width:100%;border:1.5px solid #e2e8f0;border-radius:9px;background:#fff;color:#0f172a;font-size:.81rem;font-family:inherit;padding:.42rem .65rem .42rem 2.1rem;outline:none;transition:border-color .15s,box-shadow .15s;box-sizing:border-box}.directory-search-wrap input:focus{border-color:var(--app-header-bg, #3b82f6);box-shadow:0 0 0 3px #3b82f61a}.directory-list{max-height:180px;overflow-y:auto;display:flex;flex-direction:column;gap:.28rem;scrollbar-width:thin}.directory-empty{font-size:.78rem;color:#94a3b8;text-align:center;padding:.6rem 0;display:flex;align-items:center;justify-content:center;gap:.4rem}.directory-item{display:flex;align-items:center;gap:.6rem;width:100%;text-align:left;border:1.5px solid #eef2f7;background:#fff;border-radius:10px;padding:.42rem .55rem;cursor:pointer;transition:background .12s,border-color .12s,transform .1s}.directory-item:hover{background:#eff6ff;border-color:#bfdbfe;transform:translate(2px)}.dir-avatar{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.72rem;font-weight:700;color:#fff;flex-shrink:0;letter-spacing:.02em}.dir-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:.05rem}.dir-info strong{font-size:.81rem;color:#0f172a;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dir-info span{font-size:.71rem;color:#64748b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dir-arrow{width:12px;height:12px;color:#cbd5e1;flex-shrink:0}.dir-spinner{display:inline-block;width:12px;height:12px;border:2px solid #e2e8f0;border-top-color:var(--app-header-bg, #3b82f6);border-radius:50%;animation:spin .7s linear infinite}.conversation-list{flex:1;overflow-y:auto;padding:.5rem;scrollbar-width:thin;scrollbar-color:#e2e8f0 transparent}.chat-list-loading{padding:.5rem;display:flex;flex-direction:column;gap:.5rem}.conv-skeleton{height:64px;border-radius:12px;background:linear-gradient(90deg,#f1f5f9 25%,#e8eff6,#f1f5f9 75%);background-size:200% 100%;animation:shimmer 1.4s infinite}.chat-empty-state{display:flex;flex-direction:column;align-items:center;gap:.55rem;padding:2rem 1rem;text-align:center;color:#94a3b8}.chat-empty-icon{width:38px;height:38px;color:#cbd5e1}.chat-empty-state p{margin:0;font-size:.82rem;color:#94a3b8}.chat-empty-action{margin-top:.25rem;background:var(--app-header-bg, #3b82f6);color:#fff;border:none;border-radius:8px;font-size:.78rem;font-weight:600;font-family:inherit;padding:.42rem 1rem;cursor:pointer;transition:opacity .15s}.chat-empty-action:hover{opacity:.88}.conversation-item{width:100%;text-align:left;border:1.5px solid transparent;background:transparent;border-radius:12px;padding:.62rem .65rem;cursor:pointer;margin-bottom:.22rem;display:flex;align-items:center;gap:.65rem;transition:background .12s,border-color .12s;position:relative}.conversation-item:hover{background:#f8fafc;border-color:#e8f0fb}.conversation-item.active{background:linear-gradient(135deg,#eff6ff,#f0f9ff);border-color:#bfdbfe}.conv-avatar{position:relative;width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.82rem;font-weight:700;color:#fff;flex-shrink:0;letter-spacing:.02em}.conv-online-dot{position:absolute;bottom:1px;right:1px;width:9px;height:9px;background:#22c55e;border:2px solid #ffffff;border-radius:50%}.conv-content{flex:1;min-width:0}.conv-top{display:flex;align-items:center;justify-content:space-between;gap:.4rem;margin-bottom:.2rem}.conv-name{font-size:.85rem;font-weight:600;color:#0f172a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.conv-time{font-size:.69rem;color:#94a3b8;white-space:nowrap;flex-shrink:0}.conv-bottom{display:flex;align-items:center;justify-content:space-between;gap:.4rem}.conv-preview{margin:0;font-size:.75rem;color:#64748b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:175px}.you-label{color:#94a3b8}.unread-badge{flex-shrink:0;min-width:18px;height:18px;border-radius:999px;background:var(--app-header-bg, #3b82f6);color:#fff;font-size:.65rem;font-weight:700;display:inline-flex;align-items:center;justify-content:center;padding:0 .3rem}.muted-icon{width:12px;height:12px;color:#94a3b8;flex-shrink:0}.chat-window-head{padding:.85rem 1.1rem;border-bottom:1px solid #f1f5f9;display:flex;align-items:center;justify-content:space-between;gap:.8rem;background:linear-gradient(135deg,#fff,#f8fafc)}.chat-window-contact{display:flex;align-items:center;gap:.75rem}.chat-window-avatar{width:42px;height:42px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.88rem;font-weight:700;color:#fff;flex-shrink:0}.chat-window-head h3{margin:0;font-size:.95rem;font-weight:700;color:#0f172a;display:flex;align-items:center;gap:.5rem}.dept-badge{font-size:.68rem;font-weight:500;color:#64748b;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:5px;padding:.12rem .4rem}.status-indicator{margin:.15rem 0 0;font-size:.73rem;color:#94a3b8;display:flex;align-items:center;gap:.3rem}.status-indicator.online{color:#16a34a}.status-dot{width:7px;height:7px;border-radius:50%;background:#94a3b8;flex-shrink:0}.status-indicator.online .status-dot{background:#22c55e;box-shadow:0 0 0 2px #22c55e40}.chat-window-actions{display:flex;gap:.4rem}.action-chip{display:flex;align-items:center;gap:.35rem;border:1.5px solid #e2e8f0;background:#f8fafc;color:#475569;border-radius:8px;padding:.38rem .65rem;font-size:.76rem;font-weight:600;font-family:inherit;cursor:pointer;transition:all .15s}.action-chip:hover{background:#edf2f7;border-color:#cbd5e1;color:#1e293b}.action-chip.active{background:#fff7ed;border-color:#f59e0b;color:#92400e}.action-chip.danger:hover{background:#fef2f2;border-color:#fca5a5;color:#991b1b}.message-feed{flex:1;overflow-y:auto;padding:1rem 1.1rem;background:linear-gradient(180deg,#fafcff,#f4f8fd);display:flex;flex-direction:column;gap:0;scrollbar-width:thin;scrollbar-color:#e2e8f0 transparent}.msg-loading,.msg-empty-state{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.7rem;color:#94a3b8;font-size:.83rem}.msg-empty-state svg{opacity:.4}.msg-empty-state p{margin:0}.day-separator{text-align:center;margin:.6rem 0 .8rem;position:relative}.day-separator:before{content:"";position:absolute;left:0;right:0;top:50%;height:1px;background:#e8eef6}.day-separator span{position:relative;background:#eef2f8;color:#64748b;font-size:.68rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;padding:.22rem .65rem;border-radius:999px;border:1px solid #dde5f0}.message-row{display:flex;align-items:flex-end;gap:.5rem;margin-bottom:.65rem;max-width:78%}.message-row.incoming{align-self:flex-start}.message-row.outgoing{align-self:flex-end;flex-direction:row-reverse}.msg-avatar{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.65rem;font-weight:700;color:#fff;flex-shrink:0;margin-bottom:.15rem}.message-content{display:flex;flex-direction:column;gap:.18rem;min-width:0}.message-sender-name{font-size:.69rem;font-weight:600;color:#64748b;margin-left:.2rem}.message-bubble{padding:.55rem .8rem;border-radius:14px;font-size:.85rem;color:#0f172a;line-height:1.5;white-space:pre-wrap;word-break:break-word}.message-row.incoming .message-bubble{background:#fff;border:1px solid #e2edf8;border-bottom-left-radius:4px;box-shadow:0 1px 4px #0f172a0d}.message-row.outgoing .message-bubble{background:linear-gradient(135deg,var(--app-header-bg, #3b82f6) 0%,#60a5fa 100%);color:#fff;border-bottom-right-radius:4px;box-shadow:0 2px 8px #3b82f640}.message-meta{display:flex;align-items:center;gap:.4rem;padding:0 .2rem;font-size:.68rem;color:#94a3b8}.message-row.outgoing .message-meta{justify-content:flex-end}.msg-status{display:flex;align-items:center;gap:.25rem;font-size:.66rem}.msg-status.seen{color:#3b82f6}.msg-status.delivered{color:#94a3b8}.composer-box{border-top:1px solid #f1f5f9;padding:.75rem 1rem;display:flex;align-items:flex-end;gap:.55rem;background:#fff}.composer-box textarea{flex:1;border:1.5px solid #e2e8f0;border-radius:12px;background:#f8fafc;color:#0f172a;font-size:.86rem;font-family:inherit;line-height:1.5;padding:.6rem .85rem;outline:none;resize:none;min-height:40px;max-height:120px;overflow-y:auto;transition:border-color .15s,background .15s,box-shadow .15s;box-sizing:border-box}.composer-box textarea:focus{border-color:var(--app-header-bg, #3b82f6);background:#fff;box-shadow:0 0 0 3px #3b82f61a}.composer-box textarea::placeholder{color:#b0b8c8}.send-btn{width:42px;height:42px;border-radius:12px;background:var(--app-header-bg, #3b82f6);border:none;color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:opacity .15s,transform .1s,box-shadow .15s;flex-shrink:0;box-shadow:0 2px 8px #3b82f64d}.send-btn:hover:not(:disabled){opacity:.9;transform:scale(1.04)}.send-btn:disabled{opacity:.45;cursor:not-allowed;transform:none;box-shadow:none}.send-btn.sending{opacity:.7}.send-spinner{display:inline-block;width:16px;height:16px;border:2px solid rgba(255,255,255,.35);border-top-color:#fff;border-radius:50%;animation:spin .7s linear infinite}.chat-window-panel{position:relative}.chat-window-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;text-align:center;padding:2rem;color:#64748b}.chat-empty-illustration{width:90px;height:90px;border-radius:50%;background:linear-gradient(135deg,#eff6ff,#f0f9ff);border:2px solid #dbeafe;display:flex;align-items:center;justify-content:center;margin-bottom:.25rem}.chat-empty-illustration svg{color:var(--app-header-bg, #3b82f6);opacity:.7}.chat-window-empty h3{margin:0;font-size:1.15rem;font-weight:700;color:#1e293b}.chat-window-empty p{margin:0;font-size:.85rem;color:#94a3b8;max-width:280px}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.conversation-list::-webkit-scrollbar,.message-feed::-webkit-scrollbar,.directory-list::-webkit-scrollbar{width:4px}.conversation-list::-webkit-scrollbar-track,.message-feed::-webkit-scrollbar-track,.directory-list::-webkit-scrollbar-track{background:transparent}.conversation-list::-webkit-scrollbar-thumb,.message-feed::-webkit-scrollbar-thumb,.directory-list::-webkit-scrollbar-thumb{background:#e2e8f0;border-radius:999px}@media (max-width: 1024px){.chat-layout{grid-template-columns:300px minmax(0,1fr)}}@media (max-width: 860px){.chat-layout{height:auto;grid-template-columns:1fr}.chat-list-panel{min-height:340px;max-height:50vh}.chat-window-panel{min-height:380px}}.notices-layout-wrapper,.modal-wrapper-overlay{--office-primary: var(--app-header-bg, #2e7d32);--office-primary-light: rgba(46, 125, 50, .08);--office-surface: var(--surface-color, #ffffff);--office-border: var(--border-color, #dee2e6);--office-bg: var(--page-bg, #f8f9fa);--office-text: #212529;--office-muted: #6c757d;--office-radius-md: 12px;--office-radius-sm: 8px;--office-shadow-sm: 0 2px 8px rgba(0, 0, 0, .06);--office-shadow-md: 0 4px 16px rgba(0, 0, 0, .08);--office-shadow-lg: 0 10px 30px rgba(0, 0, 0, .12);--office-transition: all .3s ease;--office-transition-fast: all .15s ease;--office-danger: #dc3545;--office-secondary: #1976d2}.notices-count-badge{background-color:var(--office-primary-light);color:var(--office-primary);border:1px solid rgba(46,125,50,.12);font-size:11.5px;font-weight:600;padding:2px 8px;border-radius:9999px}.notice-announcement-card:hover{transform:translateY(-2px);box-shadow:var(--office-shadow-md);border-color:#2e7d3233}.notice-audience-tag{font-size:11px;font-weight:600;padding:2px 6px;background-color:var(--office-primary-light);color:var(--office-primary);border:1px solid rgba(46,125,50,.1);border-radius:4px}.tags-input-container:focus-within{border-color:var(--office-primary);box-shadow:0 0 0 2px #2e7d3226}.tag-node{display:inline-flex;align-items:center;gap:6px;background-color:var(--office-primary-light);color:var(--office-primary);border:1px solid rgba(46,125,50,.15);border-radius:100px;padding:3px 10px;font-size:12px;font-weight:550}.attachments-drop-zone:hover{border-color:var(--office-primary);background-color:#2e7d3205}.file-list-node.existing{background-color:#2e7d3203;border-color:#2e7d3226}.card-attachment-link:hover{background-color:var(--office-primary-light);border-color:#2e7d3240}:root{--vlab-primary: #10b981;--vlab-primary-dark: #059669;--vlab-primary-light: rgba(16, 185, 129, .1);--vlab-bg: #f8fafc;--vlab-text: #0f172a;--vlab-text-light: #64748b;--vlab-border: rgba(148, 163, 184, .15);--vlab-card-shadow: 0 10px 30px -5px rgba(0, 0, 0, .05)}.virtual-lab-dashboard-root{background-color:var(--vlab-bg);min-height:100vh;display:flex;flex-direction:column}.virtual-lab-dashboard-content{flex:1;padding:30px;max-width:1440px;margin:0 auto;width:100%}.vlab-title-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;flex-wrap:wrap;gap:16px}.vlab-header-title{font-size:2rem;font-weight:850;color:var(--vlab-text);letter-spacing:-.04em;margin:0}.vlab-header-subtitle{font-size:.95rem;color:var(--vlab-text-light);margin:4px 0 0}.vlab-action-buttons{display:flex;gap:12px}.vlab-btn{padding:10px 20px;border-radius:12px;font-size:.9rem;font-weight:750;display:inline-flex;align-items:center;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);border:1px solid transparent}.vlab-btn.btn-primary{background:var(--vlab-primary);color:#fff}.vlab-btn.btn-primary:hover{background:var(--vlab-primary-dark);transform:translateY(-1px);box-shadow:0 4px 12px #10b98140}.vlab-btn.btn-secondary{background:#fff;color:var(--vlab-text);border-color:var(--vlab-border)}.vlab-btn.btn-secondary:hover{background:#f1f5f9;transform:translateY(-1px)}.glassmorphic{background:#ffffffb3;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.45);box-shadow:var(--vlab-card-shadow);border-radius:20px}.vlab-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px;margin-bottom:30px}.vlab-stat-card{padding:20px;display:flex;align-items:center;gap:16px;transition:transform .2s ease,box-shadow .2s ease}.vlab-stat-card:hover{transform:translateY(-2px);box-shadow:0 15px 35px -5px #00000014}.vlab-stat-icon-wrapper{width:52px;height:52px;border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:1.5rem}.vlab-stat-info h3{font-size:1.75rem;font-weight:850;margin:0;color:var(--vlab-text)}.vlab-stat-info p{font-size:.85rem;color:var(--vlab-text-light);margin:2px 0 0;font-weight:650}.stat-date-text{font-size:1.15rem!important}.blue-theme{background:#3b82f61a;color:#3b82f6}.green-theme{background:#10b9811a;color:#10b981}.purple-theme{background:#8b5cf61a;color:#8b5cf6}.orange-theme{background:#f973161a;color:#f97316}.teal-theme{background:#14b8a61a;color:#14b8a6}.pink-theme{background:#ec48991a;color:#ec4899}.indigo-theme{background:#6366f11a;color:#6366f1}.dark-theme{background:#64748b1a;color:#64748b}.vlab-workspace-box{padding:24px}.workspace-box-title{margin:0 0 20px;font-size:1.15rem;font-weight:800;color:var(--vlab-text)}.vlab-sticky-filters{background:#f8fafccc;border:1px solid var(--vlab-border);padding:16px;border-radius:14px;margin-bottom:24px}.filter-select-group{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.filter-input-wrapper{display:flex;flex-direction:column;gap:6px}.filter-input-wrapper label{font-size:.75rem;font-weight:750;text-transform:uppercase;letter-spacing:.05em;color:var(--vlab-text-light)}.filter-input-wrapper select,.filter-input-wrapper input{padding:8px 12px;border-radius:10px;border:1px solid var(--vlab-border);background:#fff;color:var(--vlab-text);font-size:.85rem;font-weight:650;outline:none;transition:border-color .2s}.filter-input-wrapper select:focus,.filter-input-wrapper input:focus{border-color:var(--vlab-primary)}.vlab-student-workspace-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;gap:16px;flex-wrap:wrap}.search-bar-wrapper{position:relative;max-width:400px;width:100%}.search-bar-wrapper input{width:100%;padding:10px 16px 10px 42px;border-radius:12px;border:1px solid var(--vlab-border);background:#fff;font-size:.9rem;outline:none;font-weight:600}.search-bar-wrapper input:focus{border-color:var(--vlab-primary)}.search-icon{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--vlab-text-light);font-size:1.05rem}.total-badge{background:#10b9811a;color:var(--vlab-primary-dark);font-size:.8rem;font-weight:750;padding:6px 14px;border-radius:99px}.vlab-loading-skeleton{display:flex;flex-direction:column;gap:12px;padding:40px 0}.skeleton-line{height:48px;background:linear-gradient(90deg,#f1f5f9 25%,#e2e8f0,#f1f5f9 75%);background-size:200% 100%;animation:loading-skeleton-sweep 1.5s infinite;border-radius:8px}@keyframes loading-skeleton-sweep{0%{background-position:200% 0}to{background-position:-200% 0}}.vlab-empty-state{text-align:center;padding:60px 0}.empty-state-icon{font-size:3rem;color:var(--vlab-text-light);opacity:.5;margin-bottom:12px;display:inline-block}.vlab-empty-state h4{margin:0;font-size:1.1rem;font-weight:800;color:var(--vlab-text)}.vlab-empty-state p{color:var(--vlab-text-light);font-size:.9rem;margin:8px 0 0}.vlab-table-responsive{overflow-x:auto;background:#fff;border-radius:14px;border:1px solid var(--vlab-border)}.vlab-analytics-table{width:100%;border-collapse:collapse;text-align:left}.vlab-analytics-table th,.vlab-analytics-table td{padding:14px 20px;border-bottom:1px solid var(--vlab-border);font-size:.9rem}.vlab-analytics-table th{background:#f8fafc;color:var(--vlab-text-light);font-weight:750;font-size:.8rem;text-transform:uppercase;letter-spacing:.05em}.student-profile-row{display:flex;align-items:center;gap:12px}.student-avatar-letter{width:32px;height:32px;border-radius:50%;background:var(--vlab-primary-light);color:var(--vlab-primary-dark);font-weight:800;display:flex;align-items:center;justify-content:center;text-transform:uppercase}.student-name-text{font-weight:700;color:var(--vlab-text)}.roll-enroll-col{display:flex;flex-direction:column}.roll-enroll-col strong{color:var(--vlab-text);font-weight:700}.roll-enroll-col span{font-size:.75rem;color:var(--vlab-text-light)}.status-badge-custom{display:inline-block;padding:4px 10px;border-radius:99px;font-size:.75rem;font-weight:750}.status-badge-custom.completed{background:#10b9811a;color:var(--vlab-primary-dark)}.status-badge-custom.started{background:#3b82f61a;color:#3b82f6}.status-badge-custom.not-started{background:#94a3b81a;color:var(--vlab-text-light)}.progress-cell-custom{display:flex;align-items:center;gap:10px;font-weight:700}.prog-track-bar{width:80px;height:6px;border-radius:99px;background:#f1f5f9;overflow:hidden}.prog-track-fill{height:100%;background:var(--vlab-primary);border-radius:99px}.vlab-alert{padding:12px 18px;border-radius:12px;font-size:.9rem;font-weight:650;margin-bottom:20px}.alert-error{background:#fef2f2;color:#ef4444;border:1px solid rgba(239,68,68,.2)}@media (max-width: 768px){.vlab-title-row{flex-direction:column;align-items:flex-start}.vlab-action-buttons{width:100%}.vlab-btn{flex:1;justify-content:center}}.create-vlab-root{background-color:var(--vlab-bg);min-height:100vh;display:flex;flex-direction:column}.create-vlab-content{flex:1;padding:30px;max-width:1000px;margin:0 auto;width:100%}.create-vlab-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;flex-wrap:wrap;gap:16px}.vlab-stepper{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;background:#fff;padding:16px 24px;border-radius:16px;border:1px solid var(--vlab-border)}.stepper-step{display:flex;align-items:center;gap:10px;position:relative}.step-circle{width:32px;height:32px;border-radius:50%;background:#f1f5f9;color:var(--vlab-text-light);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:.9rem;border:2px solid transparent;transition:all .25s}.step-name{font-size:.85rem;font-weight:750;color:var(--vlab-text-light);transition:all .25s}.stepper-step.active .step-circle{background:var(--vlab-primary-light);color:var(--vlab-primary-dark);border-color:var(--vlab-primary)}.stepper-step.active .step-name{color:var(--vlab-primary-dark)}.stepper-step.completed .step-circle{background:var(--vlab-primary);color:#fff}.stepper-step.completed .step-name{color:var(--vlab-text)}.vlab-form-container{padding:30px;margin-bottom:30px}.form-step-title{font-size:1.3rem;font-weight:850;color:var(--vlab-text);margin:0 0 24px;border-bottom:1.5px dashed var(--vlab-border);padding-bottom:12px}.form-grid-2col{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:24px}.form-input-wrapper{display:flex;flex-direction:column;gap:8px}.form-input-wrapper label{font-size:.85rem;font-weight:750;color:var(--vlab-text)}.form-input-wrapper select,.form-input-wrapper input,.form-input-wrapper textarea{padding:10px 14px;border-radius:10px;border:1px solid var(--vlab-border);background:#fff;font-size:.9rem;font-weight:600;outline:none;transition:border-color .2s;color:var(--vlab-text)}.form-input-wrapper select:focus,.form-input-wrapper input:focus,.form-input-wrapper textarea:focus{border-color:var(--vlab-primary)}.form-actions-row{display:flex;justify-content:space-between;margin-top:30px;border-top:1px solid var(--vlab-border);padding-top:20px}.experiments-selection-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;flex-wrap:wrap;gap:16px}.step-guide-text{font-size:.9rem;color:var(--vlab-text-light);margin:4px 0 0}.multi-select-buttons{display:flex;gap:10px}.btn-small{padding:6px 14px;font-size:.8rem}.experiments-cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;margin-bottom:24px}.experiment-card-select{background:#fff;border:1px solid var(--vlab-border);border-radius:12px;padding:16px;display:flex;align-items:flex-start;gap:12px;cursor:pointer;transition:all .2s}.experiment-card-select:hover{transform:translateY(-1px);box-shadow:0 4px 12px #0000000a;border-color:var(--vlab-primary)}.experiment-card-select.selected{border-color:var(--vlab-primary);background:var(--vlab-primary-light)}.text-success-icon{color:var(--vlab-primary-dark)}.card-select-info strong{display:block;font-size:.95rem;color:var(--vlab-text);margin-bottom:4px}.card-select-info p{margin:0;font-size:.8rem;color:var(--vlab-text-light);font-weight:550;line-height:1.4}.widget-box-creation{background:#f8fafc;border:1px dashed var(--vlab-border);border-radius:14px;padding:20px;margin-bottom:24px}.widget-box-creation h4{margin:0 0 16px;font-size:1rem;font-weight:800;color:var(--vlab-text)}.widget-mcq-form,.widget-viva-form{display:flex;flex-direction:column;gap:12px}.options-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.opt-row{display:flex;align-items:center;gap:10px}.opt-row input[type=text]{flex:1}.added-items-list{margin-top:16px;display:flex;flex-direction:column;gap:8px}.added-item{background:#fff;border:1px solid var(--vlab-border);padding:8px 14px;border-radius:10px;display:flex;justify-content:space-between;align-items:center;font-size:.85rem;font-weight:650}.item-del-btn{background:transparent;border:none;color:#ef4444;cursor:pointer;font-size:1rem}.publish-summary-box{background:var(--vlab-bg);border:1px solid var(--vlab-border);border-radius:14px;padding:20px;margin-top:24px}.publish-summary-box h4{margin:0 0 12px;font-size:1rem;font-weight:800}.publish-summary-box ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.publish-summary-box li{font-size:.9rem;color:var(--vlab-text-light)}.publish-summary-box strong{color:var(--vlab-text)}@media (max-width: 768px){.vlab-stepper{flex-direction:column;align-items:flex-start;gap:10px}.form-grid-2col{grid-template-columns:1fr}}.vlab-step1-workspace{display:grid;grid-template-columns:1fr 340px;gap:24px;align-items:start}.vlab-step3-workspace{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:start}@media (max-width: 1024px){.vlab-step1-workspace,.vlab-step3-workspace{grid-template-columns:1fr}}.form-grid-3col{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:24px}@media (max-width: 900px){.form-grid-3col{grid-template-columns:repeat(2,1fr)}}@media (max-width: 600px){.form-grid-3col{grid-template-columns:1fr}}.btn-full-width{width:100%;justify-content:center;font-size:1.05rem;padding:12px 24px}.vlab-stepper{position:sticky;top:0;z-index:100;box-shadow:0 4px 12px #0000000d}.vlab-summary-panel{background:#fff;border:1px solid var(--vlab-border);border-radius:16px;padding:24px;position:sticky;top:100px}.vlab-summary-panel h4{margin:0 0 16px;font-size:1.1rem;font-weight:850;color:var(--vlab-text);border-bottom:1.5px dashed var(--vlab-border);padding-bottom:8px}.summary-list{display:flex;flex-direction:column;gap:12px}.summary-item{display:flex;justify-content:space-between;align-items:center;font-size:.88rem}.summary-label{color:var(--vlab-text-light);font-weight:600}.summary-val{color:var(--vlab-text);font-weight:750;text-align:right;max-width:180px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.summary-val.highlight{font-size:1rem;font-weight:850}.summary-divider{border-top:1px solid var(--vlab-border);margin:6px 0}.scope-badge{background:var(--vlab-primary-light);color:var(--vlab-primary-dark);padding:4px 10px;border-radius:20px;font-size:.78rem;font-weight:750}.upload-drop-zone{border:2px dashed #cbd5e1;background:#f8fafc;border-radius:14px;padding:30px 20px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;cursor:pointer;transition:all .2s ease-in-out}.upload-drop-zone:hover,.upload-drop-zone.drag-over{border-color:var(--vlab-primary);background:var(--vlab-primary-light)}.upload-icon{font-size:2.5rem;color:#64748b;transition:color .2s}.upload-drop-zone:hover .upload-icon,.upload-drop-zone.drag-over .upload-icon{color:var(--vlab-primary-dark)}.upload-drop-zone p{margin:0;font-size:.95rem;font-weight:700;color:var(--vlab-text)}.upload-drop-zone span{font-size:.8rem;color:#94a3b8}.browse-label{background:#fff;border:1px solid var(--vlab-border);color:var(--vlab-text);font-weight:700;font-size:.85rem;padding:8px 20px;border-radius:8px;cursor:pointer;box-shadow:0 2px 4px #00000005;transition:all .2s}.browse-label:hover{background:#f1f5f9;border-color:#94a3b8}.file-limits{font-size:.75rem;color:#94a3b8}.upload-success-card{display:flex;align-items:center;background:#fff;border:1px solid #cbd5e1;border-radius:12px;padding:16px;gap:16px;box-shadow:0 4px 6px -1px #00000005}.success-icon-col{font-size:1.8rem;display:flex;align-items:center}.success-info-col{display:flex;flex-direction:column;gap:3px;flex:1}.success-info-col strong{font-size:.92rem;color:var(--vlab-text);word-break:break-all}.success-info-col span{font-size:.8rem;color:var(--vlab-text-light);font-weight:600}.success-badge{align-self:flex-start;background:#dcfce7;color:#15803d;font-size:.72rem;font-weight:800;padding:2px 8px;border-radius:20px;text-transform:uppercase}.btn-danger-text{background:transparent;border:none;color:#ef4444;font-weight:700;font-size:.85rem;cursor:pointer;display:flex;align-items:center;gap:4px}.btn-danger-text:hover{color:#b91c1c;text-decoration:underline}.upload-loading-overlay{display:flex;align-items:center;justify-content:center;gap:12px;background:#ffffffd9;border:1px solid var(--vlab-border);border-radius:12px;padding:16px;margin-top:12px;font-weight:700;font-size:.9rem}.source-code-editor{font-family:Fira Code,Courier New,Courier,monospace!important;font-size:.85rem!important;line-height:1.5!important;-moz-tab-size:4;tab-size:4}.vlab-preview-panel{background:#fff;border:1px solid var(--vlab-border);border-radius:16px;padding:20px;position:sticky;top:100px;box-shadow:0 4px 20px #00000008}.preview-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px;margin-bottom:14px;border-bottom:1.5px dashed var(--vlab-border);padding-bottom:10px}.preview-header h4{margin:0;font-size:1rem;font-weight:800;color:var(--vlab-text);display:flex;align-items:center;white-space:nowrap;flex-shrink:0}.preview-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px;flex-shrink:0}.preview-actions .vlab-btn,.preview-actions a.vlab-btn{white-space:nowrap;min-width:max-content;display:inline-flex;align-items:center;gap:5px}.btn-small{font-size:.8rem!important;padding:6px 12px!important;border-radius:7px!important}.preview-body{border:1px solid #e2e8f0;border-radius:10px;overflow:hidden;background:#f8fafc;aspect-ratio:16 / 10;display:flex;flex-direction:column}.embedded-preview-wrapper{width:100%;height:100%;overflow:auto;padding:12px}.manual-exp-form-box{background:#f8fafc;border:1px dashed var(--vlab-border);border-radius:14px;padding:24px}.manual-exp-form-box h4{margin:0 0 16px;font-size:1.1rem;font-weight:800;color:var(--vlab-text)}.exp-card-desc{font-size:.85rem!important;color:#475569!important;margin-top:8px!important;line-height:1.4!important}.exp-card-notes{font-size:.8rem!important;color:#64748b!important;margin-top:6px!important}.card-select-actions{min-width:90px}.btn-danger{background:linear-gradient(135deg,#ef4444,#dc2626)!important;color:#fff!important;border:none!important}.btn-danger:hover{background:#b91c1c!important}@media (max-width: 768px){.vlab-preview-panel{position:static;padding:14px}.preview-header{flex-direction:column;align-items:flex-start;gap:10px}.preview-actions{width:100%;justify-content:flex-start}.preview-actions .vlab-btn,.preview-actions a.vlab-btn{flex:1 1 auto;justify-content:center;min-width:0}}@media (max-width: 480px){.preview-actions{flex-direction:column}.preview-actions .vlab-btn,.preview-actions a.vlab-btn{width:100%}}.vlab-library-root{background-color:var(--vlab-bg);min-height:100vh;display:flex;flex-direction:column}.vlab-library-content{flex:1;padding:30px;max-width:1440px;margin:0 auto;width:100%}.vlab-library-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;flex-wrap:wrap;gap:16px}.vlab-library-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px}.library-card{padding:24px;display:flex;flex-direction:column;justify-content:space-between;min-height:320px;transition:transform .2s,box-shadow .2s}.library-card:hover{transform:translateY(-2px);box-shadow:0 15px 35px -5px #00000014}.library-card-header{margin-bottom:16px}.lib-badge-row{display:flex;justify-content:space-between;margin-bottom:12px}.type-badge{background:#f1f5f9;color:var(--vlab-text-light);font-size:.75rem;font-weight:750;padding:4px 10px;border-radius:99px;border:1px solid var(--vlab-border)}.lib-experiment-title{margin:0;font-size:1.15rem;font-weight:800;color:var(--vlab-text);line-height:1.3}.lib-subject-text{font-size:.8rem;color:var(--vlab-primary-dark);font-weight:750;margin-top:4px;display:block}.library-card-body{border-top:1px dashed var(--vlab-border);border-bottom:1px dashed var(--vlab-border);padding:12px 0;margin-bottom:16px;display:flex;flex-direction:column;gap:8px}.lib-meta-row{display:flex;justify-content:space-between;font-size:.8rem}.lib-meta-row span{color:var(--vlab-text-light);font-weight:600}.lib-meta-row strong{color:var(--vlab-text);font-weight:700}.library-card-actions{display:flex;gap:6px;align-items:center;flex-wrap:wrap;width:100%}.library-card-actions .vlab-btn{padding:6px 10px;font-size:.75rem;flex:1;min-width:75px;justify-content:center;display:inline-flex;align-items:center;white-space:nowrap}.delete-icon-btn{background:transparent;border:none;color:#ef4444;cursor:pointer;padding:6px 10px;font-size:1.05rem;border-radius:8px;transition:background .2s;display:inline-flex;align-items:center;justify-content:center}.delete-icon-btn:hover{background:#fef2f2}.preview-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0f172a66;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:1050;padding:20px}.preview-modal-box{width:100%;max-width:900px;height:80vh;display:flex;flex-direction:column;overflow:hidden;padding:0}.preview-modal-header{padding:16px 24px;border-bottom:1px solid var(--vlab-border);display:flex;justify-content:space-between;align-items:center}.preview-modal-header h3{margin:0;font-size:1.15rem;font-weight:850}.close-modal-btn{background:transparent;border:none;font-size:1.5rem;cursor:pointer;color:var(--vlab-text-light)}.preview-modal-viewport{flex:1;background:#f8fafc;position:relative;display:flex;align-items:center;justify-content:center;padding:0}.preview-iframe{width:100%;height:100%;border:none;background:#fff}.preview-link-box{text-align:center;padding:40px}.preview-link-box p{font-size:1rem;color:var(--vlab-text);margin-bottom:20px}.preview-iframe-wrapper{width:100%;height:100%}.student-vlab-root{background-color:var(--vlab-bg);min-height:100vh;display:flex;flex-direction:column}.student-vlab-content{flex:1;padding:30px;max-width:1200px;margin:0 auto;width:100%}.student-vlab-header-sec{margin-bottom:30px}.student-vlab-subjects-stack{display:flex;flex-direction:column;gap:20px}.subject-row-box{border-radius:16px;overflow:hidden;transition:all .25s}.subject-row-header{padding:20px 24px;display:flex;justify-content:space-between;align-items:center;cursor:pointer;background:#fff;transition:background .2s;flex-wrap:wrap;gap:16px}.subject-row-header:hover{background:#f8fafc}.subject-info-main{display:flex;align-items:center;gap:16px}.sub-avatar-box{width:48px;height:48px;border-radius:12px;background:var(--vlab-primary-light);color:var(--vlab-primary-dark);display:flex;align-items:center;justify-content:center;font-size:1.4rem}.subject-title-text{font-size:1.15rem;font-weight:800;color:var(--vlab-text);margin:0}.subject-code-badge{background:#f1f5f9;color:var(--vlab-text-light);font-size:.75rem;font-weight:700;padding:2px 8px;border-radius:6px;margin-top:4px;display:inline-block}.subject-status-summary{display:flex;align-items:center;gap:24px}.subject-prog-meter{display:flex;flex-direction:column;align-items:flex-end;gap:4px}.subject-prog-meter span{font-size:.8rem;font-weight:700;color:var(--vlab-text-light)}.subject-prog-bar{width:120px;height:6px;border-radius:99px;background:#e2e8f0;overflow:hidden}.subject-prog-fill{height:100%;background:var(--vlab-primary);border-radius:99px}.chevron-icon-custom{font-size:1.2rem;color:var(--vlab-text-light)}.subject-experiments-drawer{background:#f8fafc;border-top:1px solid var(--vlab-border);padding:24px}.drawer-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px}.student-experiment-card{background:#fff;border:1px solid var(--vlab-border);border-radius:14px;padding:20px;display:flex;flex-direction:column;justify-content:space-between;min-height:250px;transition:transform .2s,box-shadow .2s}.student-experiment-card:hover{transform:translateY(-2px);box-shadow:var(--vlab-card-shadow)}.experiment-card-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.card-badge-group{display:flex;gap:6px}.type-badge-mini{background:#6366f11a;color:#6366f1;font-size:.7rem;font-weight:750;padding:2px 8px;border-radius:4px}.difficulty-badge{font-size:.7rem;font-weight:750;padding:2px 8px;border-radius:4px;text-transform:uppercase}.difficulty-badge.easy{background:#10b9811a;color:#10b981}.difficulty-badge.medium{background:#f973161a;color:#f97316}.difficulty-badge.hard{background:#ef44441a;color:#ef4444}.status-pill{font-size:.7rem;font-weight:800;padding:2px 8px;border-radius:4px}.status-pill.completed{background:#10b9811a;color:#10b981}.status-pill.started{background:#3b82f61a;color:#3b82f6}.status-pill.not-started{background:#94a3b81a;color:#64748b}.experiment-card-mid strong{font-size:.8rem;color:var(--vlab-primary-dark);font-weight:800;text-transform:uppercase;letter-spacing:.05em;display:block;margin-bottom:4px}.experiment-card-mid h4{margin:0 0 10px;font-size:.95rem;font-weight:800;color:var(--vlab-text);line-height:1.4}.card-time-row{font-size:.75rem;color:var(--vlab-text-light);font-weight:600;margin-bottom:12px}.progress-slider-wrapper{margin-top:10px}.progress-lbl{font-size:.75rem;font-weight:700;color:var(--vlab-text-light);display:block;margin-bottom:4px}.btn-block{width:100%}:root{--vlab-primary: #10b981;--vlab-primary-dark: #047857;--vlab-primary-light: #ecfdf5;--vlab-bg: #f3f4f6;--vlab-border: #e5e7eb;--vlab-text: #1f2937;--vlab-text-light: #4b5563;--vlab-shadow: 0 10px 25px -5px rgba(0, 0, 0, .05), 0 8px 10px -6px rgba(0, 0, 0, .05)}.sim-viewer-root{background-color:var(--vlab-bg);min-height:100vh;display:flex;flex-direction:column}.sim-viewer-loading,.sim-viewer-error{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px;text-align:center}.sim-viewer-loading h4,.sim-viewer-error h4{margin:16px 0 8px;font-weight:800}.sim-viewer-layout{flex:1;padding:1rem 1.5rem;display:flex;flex-direction:column;gap:1rem;background-color:#f8fafc;overflow-y:auto}.sim-viewer-header{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1.5rem;background:#fff;border:1px solid var(--vlab-border);border-radius:12px;box-shadow:0 4px 6px -1px #0000000d}.header-left{display:flex;align-items:center;gap:1rem}.subject-badge{background:var(--vlab-primary-light);color:var(--vlab-primary-dark);font-size:.75rem;font-weight:800;padding:4px 10px;border-radius:999px;text-transform:uppercase;letter-spacing:.05em}.experiment-title{font-size:1.15rem;font-weight:800;color:var(--vlab-text);margin:0;letter-spacing:-.01em}.header-right{display:flex;align-items:center;gap:.75rem}.status-indicator{font-size:.85rem;color:var(--vlab-text-light);margin-right:.5rem}.status-indicator strong{color:var(--vlab-primary-dark)}.vlab-btn{display:inline-flex;align-items:center;gap:.5rem;font-size:.85rem;font-weight:750;padding:8px 16px;border-radius:8px;border:none;cursor:pointer;transition:all .2s ease}.btn-primary{background:var(--vlab-primary);color:#fff}.btn-primary:hover{background:var(--vlab-primary-dark)}.btn-secondary{background:#f1f5f9;color:#334155;border:1px solid #cbd5e1}.btn-secondary:hover{background:#e2e8f0}.btn-success{background:#10b981;color:#fff}.btn-success:hover{background:#059669}.vlab-simulation-wrapper{display:flex;flex-direction:column;background:#fff;border:1px solid var(--vlab-border);border-radius:16px;box-shadow:var(--vlab-shadow);overflow:hidden;position:relative}.vlab-toolbar{display:flex;justify-content:space-between;align-items:center;padding:.6rem 1.25rem;background:#f8fafc;border-bottom:1px solid var(--vlab-border);-webkit-user-select:none;user-select:none;z-index:10}.toolbar-left{display:flex;align-items:center}.toolbar-title{font-size:.85rem;font-weight:800;color:var(--vlab-text-light);display:flex;align-items:center}.toolbar-right{display:flex;align-items:center;flex-wrap:wrap;gap:.4rem}.toolbar-btn{display:inline-flex;align-items:center;gap:.35rem;font-size:.8rem;font-weight:750;color:#475569;background:transparent;border:1px solid transparent;padding:6px 12px;border-radius:6px;cursor:pointer;transition:all .15s ease}.toolbar-btn:hover{background:#e2e8f0;color:#0f172a}.toolbar-btn:active{background:#cbd5e1}.zoom-level-text{font-size:.8rem;font-weight:800;color:#475569;min-width:44px;text-align:center}.toolbar-separator{width:1px;height:20px;background:#cbd5e1;margin:0 .5rem}.link-btn{color:var(--vlab-primary-dark)}.link-btn:hover{background:var(--vlab-primary-light);color:var(--vlab-primary-dark)}.fullscreen-toggle-btn{background:#1e293b;color:#f8fafc;border:1px solid #334155}.fullscreen-toggle-btn:hover{background:#0f172a;color:#fff}.vlab-viewport-box{flex:1;min-height:calc(80vh - 120px);position:relative;background:#f8fafc;overflow:auto;display:flex;justify-content:center;align-items:flex-start}.vlab-viewport-box iframe{box-shadow:0 4px 12px #00000008;border-radius:8px}.viewport-external-box{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:3rem 1.5rem;width:100%}.link-viewport-icon{font-size:4rem;color:#3b82f6;margin-bottom:1rem}.pdf-viewport-icon{font-size:4rem;color:#ef4444;margin-bottom:1rem}.viewport-external-box h4{font-size:1.25rem;font-weight:800;margin:0 0 .5rem;color:var(--vlab-text)}.viewport-external-box p{font-size:.9rem;color:var(--vlab-text-light);max-width:360px;margin:0 0 1.5rem;line-height:1.5}.embedded-simulation-wrapper{overflow:auto;border-radius:8px;box-shadow:0 4px 12px #00000008}.vlab-simulation-wrapper.vlab-fullscreen-active,.vlab-simulation-wrapper:fullscreen{width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;border-radius:0!important;border:none!important;padding:0!important;margin:0!important;background:#f8fafc}.vlab-simulation-wrapper.vlab-fullscreen-active .vlab-viewport-box,.vlab-simulation-wrapper:fullscreen .vlab-viewport-box{min-height:calc(100vh - 50px)!important;height:calc(100vh - 50px)!important}@media (max-width: 768px){.sim-viewer-header{flex-direction:column;align-items:flex-start;gap:.75rem;padding:1rem}.header-right{width:100%;justify-content:space-between}.vlab-toolbar{flex-direction:column;align-items:flex-start;gap:.5rem;padding:.75rem 1rem}.toolbar-right{width:100%;flex-wrap:wrap;justify-content:flex-start;gap:6px}.toolbar-btn{flex:1 1 auto;justify-content:center;min-width:max-content}.toolbar-separator{display:none}}:root{--primary-gradient: linear-gradient(135deg, #2563eb 0%, #1d4ed8 100%);--success-gradient: linear-gradient(135deg, #10b981 0%, #059669 100%);--accent-gradient: linear-gradient(135deg, #f59e0b 0%, #d97706 100%);--danger-gradient: linear-gradient(135deg, #ef4444 0%, #dc2626 100%);--card-shadow: 0 4px 20px rgba(0, 0, 0, .05);--hover-shadow: 0 20px 40px rgba(37, 99, 235, .12);--border-color: #e2e8f0;--bg-primary: #f8fafc}.edit-Ciaan-page{width:100%;padding:2.5rem 2rem;box-sizing:border-box;background-color:var(--bg-primary);min-height:100vh;max-width:none;overflow:visible}.edit-Ciaan-banner{position:relative;background:linear-gradient(135deg,#0f172a,#1e293b);color:#fff;padding:3rem 2.5rem;border-radius:24px;margin-bottom:2.5rem;overflow:hidden;box-shadow:0 10px 30px #0f172a26;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:20px}.edit-Ciaan-banner:before{content:"";position:absolute;top:-50%;right:-20%;width:300px;height:300px;background:#2563eb26;border-radius:50%;filter:blur(80px)}.banner-content{position:relative;z-index:2;max-width:600px}.banner-title{font-size:2.25rem;font-weight:800;margin-bottom:.5rem;letter-spacing:-.025em;display:flex;align-items:center;gap:12px}.banner-subtitle{color:#94a3b8;font-size:1rem;line-height:1.6;margin:0}.banner-actions{position:relative;z-index:2}.btn-premium-request{background:var(--primary-gradient);color:#fff;border:none;font-weight:700;padding:14px 28px;border-radius:50px;font-size:.95rem;box-shadow:0 4px 14px #2563eb66;transition:all .3s cubic-bezier(.4,0,.2,1);display:inline-flex;align-items:center;gap:8px;cursor:pointer}.btn-premium-request:hover{transform:translateY(-2px);box-shadow:0 6px 20px #2563eb99;color:#fff}.edit-Ciaan-tabs{display:flex;background-color:#f1f5f9;padding:6px;border-radius:16px;margin-bottom:2.5rem;max-width:fit-content;margin-left:auto;margin-right:auto;box-shadow:inset 0 2px 4px #0000000d}.edit-Ciaan-tab{background:none;border:none;font-size:.95rem;font-weight:700;color:#64748b;padding:12px 24px;cursor:pointer;border-radius:12px;transition:all .25s ease;position:relative;display:flex;align-items:center;gap:8px}.edit-Ciaan-tab:hover{color:#1e293b}.edit-Ciaan-tab.active{color:#2563eb;background-color:#fff;box-shadow:0 4px 12px #0000000d}.edit-Ciaan-tab.active:after{display:none}.Ciaan-card-container{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:2rem;padding:.5rem}.Ciaan-dashboard-card{background-color:#fff;border-radius:24px;padding:2rem 1.75rem;border:1px solid rgba(226,232,240,.8);box-shadow:var(--card-shadow);transition:all .4s cubic-bezier(.16,1,.3,1);display:flex;flex-direction:column;align-items:center;position:relative;overflow:hidden;height:100%;min-height:290px}.Ciaan-dashboard-card:before{content:"";position:absolute;top:0;left:0;right:0;height:6px;background:var(--primary-gradient);opacity:0;transition:opacity .3s ease}.Ciaan-dashboard-card:hover{transform:translateY(-8px);box-shadow:var(--hover-shadow);border-color:#cbd5e1}.Ciaan-dashboard-card:hover:before{opacity:1}.Ciaan-card-collab-stack{display:flex;align-items:center;justify-content:center;margin-top:12px;gap:-6px}.Ciaan-card-avatar{width:24px;height:24px;border-radius:50%;border:2px solid white;background-color:#3b82f6;color:#fff;font-size:.65rem;font-weight:700;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 4px #0000000d}.Ciaan-id{font-size:.85rem;font-weight:800;color:#2563eb;background-color:#eff6ff;padding:6px 14px;border-radius:50px;margin-bottom:1.25rem;border:1px solid #dbeafe;letter-spacing:.5px;display:inline-block}.Ciaan-icon{font-size:3rem;color:#2563eb;margin-bottom:1.25rem;transition:transform .3s ease}.Ciaan-dashboard-card:hover .Ciaan-icon{transform:scale(1.1)}.card-text{font-size:1rem;color:#334155;line-height:1.5;margin-bottom:8px;text-align:center}.subject-code{color:#64748b;font-size:.85rem;display:block;margin-top:2px}.division-label{color:#64748b;font-size:.9rem}.Ciaan-access-pill{margin-top:1rem;font-size:.78rem;font-weight:700;color:#4f46e5;background-color:#eedffc;border-radius:50px;padding:6px 14px;display:inline-flex;align-items:center;gap:4px;box-shadow:0 2px 6px #4f46e514}.card-hover-text{position:absolute;bottom:12px;left:50%;transform:translate(-50%) translateY(10px);background:#0f172a;color:#fff;padding:8px 16px;border-radius:50px;font-size:.8rem;font-weight:700;opacity:0;transition:all .3s ease;box-shadow:0 4px 12px #00000026}.Ciaan-dashboard-card:hover .card-hover-text{opacity:1;transform:translate(-50%) translateY(0)}.Ciaan-manage-btn{position:absolute;top:16px;left:16px;border:none;border-radius:50px;padding:6px 14px;font-size:.78rem;font-weight:700;background-color:#f1f5f9;color:#475569;z-index:10;transition:all .2s;box-shadow:0 2px 5px #0000000d}.Ciaan-manage-btn:hover{background-color:#e2e8f0;color:#0f172a;transform:translateY(-1px)}.Ciaan-modal-backdrop{position:fixed;top:0;left:0;width:100vw;height:100vh;background-color:#0f172a99;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:999998;display:flex;align-items:center;justify-content:center;padding:20px}.Ciaan-modal-dialog{width:100%;max-width:600px;z-index:999999;margin:0;transform:translateY(0);animation:modalEnter .3s cubic-bezier(.34,1.56,.64,1)}.Ciaan-modal-dialog.modal-lg{max-width:800px}.Ciaan-modal-content{background:#fff;border-radius:24px;box-shadow:0 25px 50px -12px #00000040;border:1px solid rgba(226,232,240,.8);display:flex;flex-direction:column;max-height:90vh;overflow:hidden}@keyframes modalEnter{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}.requests-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem}.request-card{background:#fff;border-radius:20px;border:1px solid #e2e8f0;padding:1.5rem;box-shadow:0 4px 6px -1px #0000000d;display:flex;flex-direction:column;justify-content:space-between;min-height:180px}.request-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.request-card-body{font-size:.92rem;color:#475569;margin:12px 0;line-height:1.5}.request-card-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:auto}@media (max-width: 1024px){.edit-Ciaan-banner{padding:2rem}.banner-title{font-size:1.75rem}}@media (max-width: 768px){.edit-Ciaan-page{padding:1.5rem 1rem}.edit-Ciaan-banner{flex-direction:column;align-items:flex-start;padding:1.75rem}.btn-premium-request{width:100%;justify-content:center}.edit-Ciaan-tabs{flex-direction:column;width:100%;max-width:100%}.edit-Ciaan-tab{justify-content:center}.Ciaan-card-container{grid-template-columns:1fr}}.Ciaan-dashboard-card.archived-card{background-color:#f8fafc;border-color:#cbd5e1b3;box-shadow:0 4px 12px #00000005;opacity:.85}.Ciaan-dashboard-card.archived-card:before{background:linear-gradient(135deg,#64748b,#475569)}.Ciaan-dashboard-card.archived-card .Ciaan-id{color:#64748b;background-color:#f1f5f9;border-color:#e2e8f0}.Ciaan-dashboard-card.archived-card .Ciaan-icon{color:#64748b}.Ciaan-dashboard-card.archived-card:hover{transform:translateY(-4px);box-shadow:0 10px 20px #64748b1a;opacity:1}.workspace-section-group{margin-bottom:3.5rem}.workspace-section-title{font-size:1.4rem;font-weight:700;border-bottom:2px solid #e2e8f0;padding-bottom:12px}.no-workspaces-alert{padding:2.5rem;border-radius:16px;background-color:#f8fafc;text-align:center;color:#64748b;font-weight:600;border:1px dashed #cbd5e1;margin:10px 0}.btn-premium-accept{background:var(--success-gradient);color:#fff;border:none;font-weight:700;padding:8px 24px;border-radius:50px;font-size:.85rem;box-shadow:0 4px 10px #10b98133;transition:all .25s cubic-bezier(.4,0,.2,1);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;min-width:100px}.btn-premium-accept:hover{transform:translateY(-2px);box-shadow:0 6px 15px #10b98166;color:#fff}.btn-premium-accept:active{transform:translateY(0)}.btn-premium-reject{background:#fff;color:#ef4444;border:1.5px solid #fecaca;font-weight:700;padding:6.5px 22.5px;border-radius:50px;font-size:.85rem;transition:all .25s cubic-bezier(.4,0,.2,1);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;min-width:100px}.btn-premium-reject:hover{background-color:#fef2f2;border-color:#fca5a5;transform:translateY(-2px);color:#ef4444}.btn-premium-reject:active{transform:translateY(0)}.create-Ciaan-page{display:flex;flex-direction:column;min-height:100vh;margin-top:80px;background-color:#f8f9fa}.create-Ciaan-header{width:100%;max-width:1100px;margin:0 auto 20px;padding:0 12px;box-sizing:border-box}.create-Ciaan-header h2{margin:0;font-size:1.5rem;font-weight:600;text-align:center;background-color:var(--app-header-bg, #28a745);color:#fff;padding:12px 16px;border-radius:10px;box-shadow:0 3px 10px #28a74540}.create-Ciaan-form{width:100%;max-width:1100px;margin:0 auto 32px;padding:24px;box-sizing:border-box;background-color:#fff;border-radius:14px;border:1px solid rgba(0,0,0,.06);box-shadow:0 6px 16px #00000014;animation:fadeSlideIn .35s ease-out both}@keyframes fadeSlideIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(280px,1fr));gap:18px 20px;margin-bottom:8px}.form-group{display:flex;flex-direction:column}.form-group label{font-weight:600;color:#495057;margin-bottom:6px}.form-group select{width:100%;padding:10px 12px;font-size:1rem;color:#212529;background-color:#fff;border:1px solid #dee2e6;border-radius:10px;outline:none;transition:border-color .2s ease,box-shadow .2s ease,background-color .2s ease;box-shadow:0 1px 2px #00000005;-webkit-appearance:none;-moz-appearance:none;appearance:none}.form-group select:hover{border-color:#c7ccd1}.form-group select:focus{border-color:var(--primary-accent, #28a745);box-shadow:0 0 0 3px #28a74526}.form-group select.disabled,.form-group select:disabled{background-color:#f1f3f5;color:#6c757d;cursor:not-allowed}.form-submit{grid-column:1 / -1;display:flex;justify-content:center;margin-top:16px}.btn-submit{display:inline-flex;align-items:center;gap:10px;padding:12px 24px;font-size:1rem;font-weight:700;letter-spacing:.3px;color:#fff;background:linear-gradient(180deg,var(--primary-accent, #34c759) 0%,var(--app-header-bg, #28a745) 100%);border:none;border-radius:12px;cursor:pointer;box-shadow:0 8px 16px #28a74540,inset 0 -2px #0000000f;transition:transform .08s ease,box-shadow .2s ease,filter .2s ease}.btn-submit:hover{filter:brightness(1.03);box-shadow:0 10px 20px #28a74547,inset 0 -2px #00000014}.btn-submit:active{transform:translateY(1px)}.btn-submit:focus-visible{outline:none;box-shadow:0 0 0 3px #28a7454d}.btn-submit:disabled{background:#a8ddba;box-shadow:none;cursor:not-allowed}@media (max-width: 1024px){.create-Ciaan-header{max-width:95vw}.create-Ciaan-form{max-width:95vw;padding:18px}.form-grid{grid-template-columns:repeat(2,minmax(240px,1fr));gap:14px 16px}}@media (max-width: 768px){.create-Ciaan-page{margin-top:64px}.create-Ciaan-header h2{font-size:1.2rem;padding:10px 12px;border-radius:8px}.create-Ciaan-form{padding:14px;border-radius:12px}.form-grid{grid-template-columns:1fr;gap:12px}.form-submit{margin-top:12px}.btn-submit{width:100%;padding:12px 10px}}@media (max-width: 420px){.create-Ciaan-header h2{font-size:1rem;padding:8px 10px}.btn-submit{font-size:.98rem}}.Ciaan-secondary-sidebar-wrapper{width:100%;margin:0;background:none;border-radius:0;box-shadow:none;display:flex;flex-direction:column;align-items:flex-start;z-index:101}@media (min-width: 769px){.Ciaan-secondary-sidebar-wrapper{position:fixed!important;top:var(--header-height, 60px)!important;left:calc(var(--sidebar-width, 240px) + 1rem)!important;width:260px!important;height:calc(100vh - var(--header-height, 60px) - 12px)!important;max-height:calc(100vh - var(--header-height, 60px) - 12px)!important;padding:0 0 0 10px!important;margin:0!important;box-sizing:border-box;overflow:hidden;z-index:1010;transition:left var(--transition-speed, .3s) ease}.Ciaan-secondary-sidebar-wrapper .secondary-sidebar{width:100%!important;min-width:0!important;max-width:none!important;height:100%!important;max-height:100%!important;border-radius:16px!important;border:1px solid #e2e8f0!important;background:linear-gradient(180deg,#fff,#f8fafc)!important;box-shadow:0 10px 30px #0f172a0a!important;padding:16px 12px!important;margin:0!important;box-sizing:border-box!important;display:flex!important;flex-direction:column!important}.timetable-secondary-sidebar-wrapper,.syllabus-secondary-sidebar-wrapper,.student-secondary-sidebar-wrapper,.details-sidebar-column{width:0!important;min-width:0!important;max-width:0!important;flex:0 0 0!important;border:none!important;padding:0!important;margin:0!important}.timetable-main-content,.teaching-main-content.syllabus-main-content,.labplanning-main-content,.student-main-content,.Ciaan-diary-main,.details-content-column{margin-left:266px!important;transition:margin-left var(--transition-speed, .3s) ease}}@media (min-width: 769px) and (max-width: 1024px){.timetable-main-content,.teaching-main-content.syllabus-main-content,.labplanning-main-content,.student-main-content,.Ciaan-diary-main,.details-content-column{margin-left:calc(var(--Ciaan-secondary-width, 180px) + 6px)!important;padding:15px 15px 15px 6px!important}}.Ciaan-secondary-sidebar-wrapper .secondary-sidebar{box-sizing:border-box!important;width:100%!important;min-width:0!important;max-width:none!important;color:var(--text-color-primary, #1e293b)!important;background:linear-gradient(180deg,#fff,#f8fafc)!important;border:1px solid #e2e8f0!important;border-radius:16px!important;box-shadow:0 10px 30px #0f172a0a!important;padding:12px!important;margin:0!important;position:relative!important;z-index:1002!important;display:flex!important;flex-direction:column!important;opacity:1!important;visibility:visible!important;transform:none!important;transition:transform .3s cubic-bezier(.4,0,.2,1)!important}.secondary-sidebar-header{padding:6px 6px 8px;margin:0 0 4px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--card-border, rgba(133, 159, 206, .3))}.secondary-sidebar-title-wrap{display:flex;flex-direction:column;gap:2px}.secondary-sidebar-eyebrow{font-size:.68rem;text-transform:uppercase;letter-spacing:.12em;color:#94a3b8;font-weight:700}.secondary-sidebar-title{font-size:1.25rem;font-weight:700;color:#1e293b;line-height:1.1}.secondary-nav-list{box-sizing:border-box;list-style:none;padding:0;margin:0;flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:4px}.secondary-nav-list::-webkit-scrollbar{width:6px}.secondary-nav-list::-webkit-scrollbar-thumb{background:var(--primary-accent-light, rgba(147, 173, 219, .4));border-radius:999px}.secondary-nav-list{scrollbar-width:thin;scrollbar-color:var(--primary-accent-light, rgba(147, 173, 219, .4)) transparent}.secondary-nav-item{cursor:pointer;font-size:.92rem;color:#475569;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex;align-items:center;gap:12px;margin:0;background:transparent;border:1px solid transparent;border-radius:12px;min-height:42px;box-sizing:border-box;padding:10px 14px}.secondary-nav-index{width:24px;height:24px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;font-size:.74rem;font-weight:700;background:var(--primary-accent-light, rgba(45, 96, 190, .12));color:var(--primary-color, #295fc5)}.secondary-nav-icon{font-size:1.15rem;color:var(--text-color-secondary, #718096);display:flex;align-items:center;justify-content:center;width:20px;height:20px;transition:color .2s ease}.secondary-nav-label{font-weight:550;line-height:1.2;flex:1;transition:transform .2s ease}.secondary-nav-item:hover{background:#10b9810a!important;color:var(--primary-color, #10b981)!important}.secondary-nav-item:hover .secondary-nav-label{transform:translate(3px)}.secondary-nav-item:hover .secondary-nav-icon{color:var(--primary-color, #10b981)!important}.secondary-nav-item.active{background:#10b98114!important;border-color:#10b98133!important;border-left:4px solid var(--primary-color, #10b981)!important;color:#065f46!important}.secondary-nav-item.active .secondary-nav-index{background:var(--primary-color, #10b981);color:var(--text-on-primary, #ffffff)}.secondary-nav-item.active .secondary-nav-icon{color:var(--primary-color, #10b981)!important}@media (min-width: 769px){.Ciaan-secondary-sidebar-wrapper .secondary-sidebar{position:relative!important;transform:none!important;opacity:1!important;visibility:visible!important;display:flex!important;height:100%!important}}@media (max-width: 768px){.Ciaan-secondary-sidebar-wrapper{position:fixed;top:0;left:0;height:100dvh;width:100vw;pointer-events:none;z-index:99999;transition:background .3s ease,visibility .3s ease;visibility:hidden}.Ciaan-secondary-sidebar-wrapper.visible{pointer-events:auto;background:#0b193470;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);visibility:visible}.Ciaan-secondary-sidebar-wrapper .secondary-sidebar{position:fixed!important;top:0!important;left:0!important;width:300px!important;max-width:86vw!important;height:100dvh!important;border-radius:0!important;border:none!important;box-shadow:10px 0 32px #08132d6b!important;transform:translate(-100%)!important;transition:transform .3s cubic-bezier(.4,0,.2,1)!important;z-index:100000!important;padding:64px 12px 12px!important;overflow-y:auto!important}.Ciaan-secondary-sidebar-wrapper .secondary-sidebar.visible{transform:translate(0)!important}.secondary-sidebar-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:transparent;z-index:99999;display:block!important}.secondary-sidebar-close-btn{background:#ffffffe0;border:1px solid rgba(129,157,204,.4);width:32px;height:32px;font-size:1rem;color:#315f9f;cursor:pointer;border-radius:10px;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.secondary-sidebar-close-btn:hover{background-color:#fff;color:#234f95}.secondary-sidebar-header{position:fixed;top:0;left:0;width:300px;max-width:86vw;padding:14px;background:linear-gradient(180deg,#f4f8ff,#edf3ff);z-index:100001;border-bottom:1px solid rgba(133,159,206,.3)}.secondary-sidebar-header+.secondary-nav-list{margin-top:4px}.secondary-nav-item{min-height:46px}.secondary-nav-list{overflow-y:visible!important;flex:none!important;padding-bottom:80px}}body.Ciaan-view-only input,body.Ciaan-view-only select,body.Ciaan-view-only textarea,body.Ciaan-view-only button:not(.Ciaan-comments-toggle-btn):not(.Ciaan-comments-drawer *):not(.secondary-sidebar *):not(.navbar *):not(.header-wrapper *){pointer-events:none!important;opacity:.65;cursor:not-allowed!important}body.Ciaan-view-only a.btn:not(.Ciaan-comments-toggle-btn){pointer-events:none!important;opacity:.65;cursor:not-allowed!important}.Ciaan-notif-container{position:relative;display:inline-block;margin-left:8px;z-index:10001!important;pointer-events:auto!important}.Ciaan-notif-bell-btn{background:none;border:none;font-size:1.15rem;color:var(--primary-color, #295fc5);cursor:pointer!important;pointer-events:auto!important;position:relative;padding:4px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background-color .2s;z-index:10002!important}.Ciaan-notif-bell-btn *{pointer-events:none!important;cursor:pointer!important}.Ciaan-notif-bell-btn:hover{background-color:#295fc514}.Ciaan-notif-badge{position:absolute;top:-2px;right:-2px;background-color:#dc3545;color:#fff;border-radius:50%;font-size:.65rem;font-weight:700;width:15px;height:15px;display:flex;align-items:center;justify-content:center;box-shadow:0 0 0 2px #fff}.Ciaan-notif-dropdown{position:absolute;top:100%;right:0;width:320px;max-height:400px;background:#fff;border-radius:12px;box-shadow:0 8px 30px #00000026;border:1px solid rgba(0,0,0,.08);z-index:10000;display:flex;flex-direction:column;overflow:hidden;margin-top:8px;pointer-events:auto!important}@media (max-width: 768px){.Ciaan-notif-dropdown{width:calc(100vw - 32px)!important;right:-10px!important;left:auto!important;max-width:340px!important}}.Ciaan-notif-header{padding:10px 14px;background-color:#f8fafc;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;align-items:center}.Ciaan-notif-title{font-weight:700;font-size:.85rem;color:#1e293b;margin:0}.Ciaan-notif-markall-btn{font-size:.72rem;color:#295fc5;background:none;border:none;cursor:pointer;font-weight:600;padding:0}.Ciaan-notif-markall-btn:hover{text-decoration:underline}.Ciaan-notif-list{list-style:none;padding:0;margin:0;overflow-y:auto;flex:1}.Ciaan-notif-item{padding:12px 14px;border-bottom:1px solid #f1f5f9;cursor:pointer;transition:background-color .2s;display:flex;flex-direction:column;gap:4px}.Ciaan-notif-item:hover{background-color:#f8fafc}.Ciaan-notif-item.unread{background-color:#f0f7ff}.Ciaan-notif-item.unread:hover{background-color:#e0efff}.Ciaan-notif-message{font-size:.82rem;color:#334155;line-height:1.3}.Ciaan-notif-item.unread .Ciaan-notif-message{font-weight:600;color:#0f172a}.Ciaan-notif-time{font-size:.68rem;color:#94a3b8}.Ciaan-notif-empty{padding:24px;text-align:center;color:#64748b;font-size:.85rem}.Ciaan-comments-drawer-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background-color:#0f172a4d;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:10050}.Ciaan-comments-drawer{position:fixed;top:0;right:0;width:380px;max-width:90vw;height:100vh;background-color:#fff;box-shadow:-8px 0 32px #0f172a26;z-index:10060;display:flex;flex-direction:column;transform:translate(100%);transition:transform .3s cubic-bezier(.4,0,.2,1)}.Ciaan-comments-drawer.open{transform:translate(0)}.Ciaan-comments-header{padding:16px 20px;background-color:#0f172a;color:#fff;display:flex;justify-content:space-between;align-items:center}.Ciaan-comments-title{margin:0;font-size:1.05rem;font-weight:700;display:flex;align-items:center;gap:8px}.Ciaan-comments-close-btn{background:none;border:none;color:#94a3b8;font-size:1.2rem;cursor:pointer;padding:0;display:flex;align-items:center}.Ciaan-comments-close-btn:hover{color:#fff}.Ciaan-comments-list{flex:1;overflow-y:auto;padding:20px;display:flex;flex-direction:column;gap:16px;background-color:#f8fafc}.Ciaan-comment-item{display:flex;gap:12px;align-items:flex-start}.Ciaan-comment-avatar{width:32px;height:32px;border-radius:50%;background-color:#3b82f6;color:#fff;display:flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:700;text-transform:uppercase;flex-shrink:0}.Ciaan-comment-content{background-color:#fff;border-radius:12px;padding:12px 14px;box-shadow:0 1px 3px #0000000d;border:1px solid #e2e8f0;flex:1}.Ciaan-comment-author-info{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:4px}.Ciaan-comment-author{font-size:.8rem;font-weight:700;color:#1e293b}.Ciaan-comment-time{font-size:.68rem;color:#94a3b8}.Ciaan-comment-text{font-size:.85rem;color:#334155;white-space:pre-wrap;word-break:break-word}.Ciaan-comments-empty{text-align:center;color:#64748b;padding:40px 20px;font-size:.88rem}.Ciaan-comments-footer{padding:16px 20px;border-top:1px solid #e2e8f0;background-color:#fff}.Ciaan-comment-form{display:flex;flex-direction:column;gap:8px}.Ciaan-comment-input{width:100%;min-height:70px;max-height:120px;padding:10px 12px;border:1px solid #cbd5e1;border-radius:8px;font-size:.85rem;resize:vertical;outline:none}.Ciaan-comment-input:focus{border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f626}.Ciaan-comment-submit-btn{align-self:flex-end;padding:6px 16px;background-color:#3b82f6;color:#fff;border:none;border-radius:6px;font-size:.8rem;font-weight:600;cursor:pointer;transition:background-color .2s;display:flex;align-items:center;gap:4px}.Ciaan-comment-submit-btn:hover{background-color:#2563eb}.Ciaan-comment-submit-btn:disabled{background-color:#94a3b8;cursor:not-allowed}.Ciaan-comments-toggle-btn{position:fixed;bottom:24px;right:24px;background-color:#0f172a;color:#fff;border:none;border-radius:50px;padding:12px 20px;font-weight:700;box-shadow:0 4px 16px #0f172a4d;cursor:pointer;z-index:10000;display:flex;align-items:center;gap:8px;font-size:.9rem;transition:all .2s ease}.Ciaan-comments-toggle-btn:hover{background-color:#1e293b;transform:translateY(-2px);box-shadow:0 6px 20px #0f172a66}.Ciaan-view-only-banner{background:linear-gradient(90deg,#fffbeb,#fef3c7);border-bottom:1px solid #f59e0b;padding:8px 16px;text-align:center;font-size:.85rem;color:#b45309;font-weight:600;width:100%;box-shadow:0 2px 4px #d977060d;display:flex;align-items:center;justify-content:center;gap:8px;height:38px;box-sizing:border-box}body.Ciaan-view-only .header{top:38px!important}body.Ciaan-view-only .main-content-wrapper{margin-top:calc(var(--header-height, 60px) + 38px)!important}body.Ciaan-view-only .sidebar.main-sidebar,body.Ciaan-view-only .Ciaan-secondary-sidebar-wrapper{top:calc(var(--header-height, 60px) + 38px)!important;height:calc(100dvh - var(--header-height, 60px) - 38px)!important}@media (max-width: 768px){body.Ciaan-view-only .header{top:38px!important}body.Ciaan-view-only .main-content-wrapper{padding-top:88px!important;margin-top:0!important}body.Ciaan-view-only .sidebar.main-sidebar,body.Ciaan-view-only .secondary-sidebar{top:38px!important;height:calc(100dvh - 38px)!important}body.Ciaan-view-only .secondary-sidebar-header{top:38px!important}}:root{--Ciaan-surface: var(--card-bg, #ffffff);--Ciaan-bg-1: var(--primary-light, #f7faff);--Ciaan-bg-2: var(--primary-light, #eef3fb);--Ciaan-border: var(--card-border, #dbe5f2);--Ciaan-text: var(--text-color-primary, #10223d);--Ciaan-muted: var(--text-color-secondary, #4e607b)}.timetable-layout,.teaching-layout,.lab-layout,.student-layout,.Ciaan-diary-root,.student-layout *,.timetable-layout *,.teaching-layout *,.lab-layout *,.Ciaan-diary-root *{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif!important}.timetable-layout,.teaching-layout,.lab-layout,.student-layout,.Ciaan-diary-root{background:linear-gradient(180deg,var(--Ciaan-bg-1) 0%,var(--Ciaan-bg-2) 100%)}.timetable-main-content,.timetable-main-content.syllabus-main-content,.teaching-main-content.syllabus-main-content,.labplanning-main-content,.student-main-content,.Ciaan-diary-main{padding:20px 24px 28px 6px!important;box-sizing:border-box}.plan-container,.syllabus-container,.studentlist-container,.Ciaan-diary-surface{background:var(--Ciaan-surface)!important;border:1px solid var(--Ciaan-border)!important;border-radius:16px!important;box-shadow:0 12px 30px #0d234814!important}.timetable-header h2,.syllabus-title,.plan-title,.header-row h3,.header-with-button h6{color:var(--Ciaan-text)!important;letter-spacing:.01em}.note,.Ciaan-details{color:var(--Ciaan-muted)!important}.button-group button,.edit-btn,.nav-btn,.pagination button,.pagination-btn,.start-btn,.prev-btn,.forward-btn,.pagination-buttons .btn{border-radius:10px!important;border:1px solid var(--primary-accent, rgba(26, 87, 185, .26))!important;background:var(--primary-color, #1f63d3)!important;color:var(--text-on-primary, #ffffff)!important;font-weight:700!important;transition:transform .15s ease,filter .2s ease}.button-group button:hover,.edit-btn:hover,.nav-btn:hover,.pagination button:hover,.pagination-btn:hover,.start-btn:hover,.prev-btn:hover,.forward-btn:hover,.pagination-buttons .btn:hover{transform:translateY(-1px);filter:brightness(.95)}.pages .page-btn{border-radius:8px!important;border:1px solid var(--card-border, #c9d8ee)!important;background:var(--primary-light, #f3f7ff)!important;color:var(--primary-color, #19478f)!important;font-weight:600}.pages .page-btn.active{background:var(--primary-color, #1f63d3)!important;color:var(--text-on-primary, #fff)!important;border-color:var(--primary-color, #1f63d3)!important}.timetable,.teaching-table,.lab-table,.studentlist-container .table{border-collapse:separate!important;border-spacing:0!important;width:100%!important;border:1px solid var(--Ciaan-border, #d6e0ee)!important;border-radius:12px!important;overflow:hidden!important;background:var(--card-bg, #fff)!important}.timetable thead th,.teaching-table thead th,.lab-table thead th,.studentlist-container .table thead th{background:var(--primary-light, #eef3fb)!important;color:var(--Ciaan-text, #20314f)!important;font-weight:700!important}.timetable th,.timetable td,.teaching-table th,.teaching-table td,.lab-table th,.lab-table td,.studentlist-container .table th,.studentlist-container .table td{border-color:var(--Ciaan-border, #dde5f1)!important}.popup{border-radius:14px!important;border:1px solid var(--Ciaan-border, #d5e1f1);box-shadow:0 18px 42px #0a1f423d!important}.popup h3{color:var(--Ciaan-text, #112645)}@media (max-width: 768px){.timetable-main-content,.timetable-main-content.syllabus-main-content,.teaching-main-content.syllabus-main-content,.labplanning-main-content,.student-main-content,.Ciaan-diary-main{padding:10px!important}.plan-container,.syllabus-container,.studentlist-container,.Ciaan-diary-surface{border-radius:12px!important}}.timetable-layout{position:relative;min-height:100%;background:linear-gradient(180deg,#f7faff,#eef3fb)}.timetable-main-row{display:flex;align-items:flex-start;overflow:visible}.timetable-secondary-sidebar-wrapper{position:static;width:0;min-width:0;max-width:0;height:0;overflow:visible;border:none;background:transparent}.timetable-main-content{flex:1;min-width:0;overflow-y:auto;overflow-x:hidden}.timetable-main-content .plan-container{width:100%;max-width:1140px;margin:0 auto;padding:16px;border-radius:16px;border:1px solid #d9e3f2;background:#fff;box-shadow:0 12px 30px #0f172a14}.timetable-header{position:sticky;top:0;z-index:6;display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:12px;padding:10px 10px 12px;margin:0 0 12px;border:1px solid #dbe6f5;border-radius:12px;background:#f7fafff2;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.timetable-header-main h2{margin:0;font-size:1.65rem;color:#112747}.timetable-header-main p{margin:4px 0 0;color:#4f6078;font-size:.92rem}.button-group{display:grid;grid-template-columns:repeat(2,minmax(140px,1fr));gap:8px;min-width:320px}.button-group button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:40px;padding:9px 12px;border-radius:10px;border:1px solid var(--primary-color, #2a63cc);background:linear-gradient(180deg,var(--primary-color, #3274e0) 0%,var(--primary-accent-dark, #1f5fc8) 100%);color:var(--text-on-primary, #ffffff);font-weight:700;font-size:.9rem;cursor:pointer}.button-group button:hover{filter:brightness(.95)}.table-scroll-shell{width:100%;overflow-x:auto;border:1px solid #dbe5f2;border-radius:12px;background:#fff}.timetable{width:100%;min-width:980px;border-collapse:separate;border-spacing:0;table-layout:fixed}.timetable th,.timetable td{border-right:1px solid #dfe6f0;border-bottom:1px solid #dfe6f0;padding:8px 10px;line-height:1.4;text-align:left;vertical-align:middle;font-size:.95rem;white-space:normal;overflow-wrap:anywhere;word-break:break-word;overflow:visible}.timetable tr{height:auto}.timetable td{height:70px;min-height:70px}.timetable th:last-child,.timetable td:last-child{border-right:none}.timetable thead th{position:sticky;top:0;z-index:3;background:#eef4fd;color:#233451;font-weight:700}.timetable td:first-child,.timetable th:first-child{width:180px;background:#f7fbff;font-weight:700}.pagination{display:flex;justify-content:space-between;gap:10px;margin-top:14px;padding-top:12px;border-top:1px solid #e1e8f3}.pagination button{padding:10px 16px;border-radius:10px;border:1px solid #2a63cc;background:#1f63d3;color:#fff;font-weight:700;cursor:pointer}.popup-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0c182c73;display:flex;justify-content:center;align-items:center;z-index:2000}.popup{width:min(95vw,560px);max-height:90dvh;overflow-y:auto;background:#fff;border-radius:14px;border:1px solid #d5e1f1;box-shadow:0 18px 42px #0a1f4242;padding:24px;position:relative}.popup h3{margin:0 0 14px;color:#112645}.popup form{display:flex;flex-direction:column;gap:12px}.popup label{display:flex;flex-direction:column;gap:6px;color:#253a5a;font-weight:600}.popup select,.popup input[type=text],.popup input[type=number]{padding:9px 10px;border:1px solid #ccd9eb;border-radius:8px;font-size:.92rem}.popup button[type=submit]{border:1px solid #2a63cc;border-radius:10px;background:#1f63d3;color:#fff;padding:10px 12px;font-weight:700;cursor:pointer}.close-button{position:absolute;top:10px;right:14px;background:transparent;border:none;font-size:1.7rem;cursor:pointer;color:#637794}.popup.delete-popup{width:min(96vw,980px)}.popup.delete-popup table{width:100%;border-collapse:collapse}.popup.delete-popup th,.popup.delete-popup td{border:1px solid #d7e1ee;padding:8px;text-align:center;font-size:.82rem}.popup.delete-popup th{background:#f3f7fd}.delete-button{border:none;border-radius:8px;padding:5px 8px;background:#dc3545;color:#fff;cursor:pointer}@media (max-width: 1024px){.button-group{min-width:280px}}@media (max-width: 768px){.timetable-main-content{margin-left:0;min-height:auto;padding:10px}.timetable-main-content .plan-container{padding:10px}.timetable-header{position:static;padding:10px}.timetable-header-main h2{font-size:1.25rem}.button-group{width:100%;min-width:0;grid-template-columns:repeat(2,minmax(0,1fr))}.button-group button{font-size:.82rem;min-height:38px;padding:8px}.timetable{min-width:760px}.timetable th,.timetable td{font-size:.82rem;padding:8px 6px}.pagination{flex-direction:column}.pagination button{width:100%}}.toolbar-container{display:flex;align-items:center;justify-content:space-between;gap:32px;width:100%;flex-wrap:wrap}.personal-timetable-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:10px 20px;border-radius:10px;border:1px solid var(--primary-color, #2a63cc);background:linear-gradient(180deg,var(--primary-color, #3274e0) 0%,var(--primary-accent-dark, #1f5fc8) 100%);color:var(--text-on-primary, #ffffff);font-weight:700;font-size:.95rem;cursor:pointer;box-shadow:0 4px 10px #2a63cc26;transition:all .2s ease-in-out}.personal-timetable-btn:hover{filter:brightness(.95);transform:translateY(-1px);box-shadow:0 6px 14px #2a63cc40}.personal-timetable-container{display:flex;flex-direction:column;align-items:center;width:100%;padding:12px 0 24px}.personal-timetable-header{width:100%;text-align:center;margin-bottom:24px}.personal-timetable-header h2{font-size:1.8rem;color:#112747;margin:0}.personal-timetable-header p{font-size:1rem;color:#4f6078;margin:6px 0 0}.personal-timetable-card{width:100%;max-width:900px;background:#fff;border:1px solid #d9e3f2;border-radius:16px;padding:16px;box-shadow:0 10px 25px #0f172a0d;display:flex;justify-content:center;align-items:center;overflow:hidden}.personal-timetable-image{max-width:100%;height:auto;border-radius:8px;object-fit:contain;display:block}.personal-timetable-actions{display:flex;gap:16px;margin-top:24px;width:100%;max-width:900px;justify-content:center}.edit-pt-btn,.delete-pt-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;padding:10px 24px;border-radius:10px;font-weight:700;font-size:.95rem;cursor:pointer;transition:all .2s ease-in-out}.edit-pt-btn{border:1px solid #10b981;background:linear-gradient(180deg,#10b981,#059669);color:#fff;box-shadow:0 4px 10px #10b98126}.edit-pt-btn:hover{filter:brightness(.95);transform:translateY(-1px)}.delete-pt-btn{border:1px solid #ef4444;background:linear-gradient(180deg,#ef4444,#dc2626);color:#fff;box-shadow:0 4px 10px #ef444426}.delete-pt-btn:hover{filter:brightness(.95);transform:translateY(-1px)}.pt-dialog-popup{width:min(90vw,520px)!important}.pt-warning-content{background:#fff8f1;border:1px solid #ffe8d6;border-radius:10px;padding:16px;margin-bottom:20px}.pt-warning-alert{color:#c2410c;font-weight:700;margin:0 0 10px;font-size:.95rem}.pt-warning-list{list-style:none;padding:0;margin:0}.pt-warning-list li{color:#7c2d12;font-size:.9rem;margin-bottom:6px;line-height:1.4}.pt-warning-final{color:#7c2d12;font-weight:700;margin:10px 0 0;font-size:.9rem}.pt-agree-checkbox-label{display:flex!important;flex-direction:row!important;align-items:flex-start!important;gap:10px!important;margin-bottom:24px;cursor:pointer}.pt-agree-checkbox-label input{margin-top:4px;cursor:pointer}.pt-agree-checkbox-label span{font-size:.9rem;color:#334155;line-height:1.4;font-weight:500}.pt-dialog-actions{display:flex;justify-content:flex-end;gap:12px;width:100%}.pt-dialog-actions button{min-height:38px;padding:8px 16px;border-radius:8px;font-weight:700;font-size:.9rem;cursor:pointer}.btn-cancel{border:1px solid #cbd5e1;background:#f8fafc;color:#475569}.btn-cancel:hover{background:#f1f5f9}.btn-continue,.btn-upload{border:1px solid #2a63cc;background:#1f63d3;color:#fff}.btn-continue:disabled,.btn-upload:disabled{background:#94a3b8;border-color:#cbd5e1;cursor:not-allowed}.btn-delete{border:1px solid #dc3545;background:#dc3545;color:#fff}.btn-delete:hover{background:#bd2130}.pt-drag-drop-area{border:2px dashed #cbd5e1;border-radius:12px;padding:32px 16px;text-align:center;background:#f8fafc;cursor:pointer;transition:all .2s ease-in-out;margin-bottom:20px;position:relative;overflow:hidden;min-height:200px;display:flex;flex-direction:column;justify-content:center;align-items:center}.pt-drag-drop-area:hover{border-color:var(--primary-color, #2a63cc);background:#f1f5f9}.pt-drag-drop-area.has-preview{border-style:solid;padding:0}.pt-drag-message{display:flex;flex-direction:column;align-items:center;gap:8px}.pt-upload-icon{font-size:2.2rem}.pt-drag-text-main{font-size:1.05rem;font-weight:700;color:#1e293b;margin:4px 0 0}.pt-drag-text-sub{font-size:.9rem;color:#64748b;margin:0}.pt-allowed-info{font-size:.78rem;color:#94a3b8;margin:8px 0 0}.pt-preview-container{width:100%;height:240px;position:relative;display:flex;justify-content:center;align-items:center;background:#0f172a}.pt-preview-image{max-width:100%;max-height:100%;object-fit:contain}.pt-preview-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#0f172a99;opacity:0;display:flex;justify-content:center;align-items:center;transition:opacity .2s;color:#fff;font-weight:700;font-size:.95rem}.pt-preview-container:hover .pt-preview-overlay{opacity:1}.pt-delete-warning{font-size:.95rem;color:#475569;line-height:1.5;margin-bottom:24px}.pt-toast{position:fixed;bottom:24px;right:24px;padding:16px 24px;border-radius:12px;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;z-index:9999;display:flex;align-items:center;gap:10px;font-weight:600;font-size:14px;animation:pt-slide-in .3s ease-out forwards}.pt-toast.success{background-color:#f0fdf4;color:#166534;border:1px solid #bbf7d0}.pt-toast.error{background-color:#fef2f2;color:#991b1b;border:1px solid #fecaca}@keyframes pt-slide-in{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.fade-in{animation:pt-fade-in .35s ease-out forwards}@keyframes pt-fade-in{0%{opacity:0}to{opacity:1}}@media (max-width: 768px){.toolbar-container{flex-direction:column;align-items:stretch;gap:12px}.personal-timetable-btn{width:100%}.personal-timetable-actions{flex-direction:column;gap:10px}.edit-pt-btn,.delete-pt-btn{width:100%}}body{margin:0;font-family:sans-serif}.timetable-layout{min-height:100vh;display:flex;flex-direction:column;background:#fafbfa}.timetable-main-row{display:flex;flex-direction:row;flex:1;min-height:0;align-items:stretch}.timetable-secondary-sidebar-wrapper{width:220px;min-width:180px;max-width:240px;margin-left:0;margin-top:0;height:auto;min-height:100vh;border-radius:8px;box-shadow:0 2px 8px #0000000a;background:#fff;color:#222;flex-shrink:0;position:fixed;top:0;left:220px;z-index:101}.timetable-main-content{order:3;flex:1;margin-top:60px;padding:16px 18px;min-width:0;display:flex;flex-direction:column;align-items:flex-start;margin-left:440px}.syllabus-main-content{flex:1}.page-layout{display:flex;justify-content:flex-start;align-items:flex-start;padding:8px;width:100%;max-width:1200px;margin:0}.syllabus-container{width:100%;max-width:860px;padding:18px 18px 14px;background:#fff;border:1px solid #e9ecef;border-radius:12px;box-shadow:0 6px 22px #1018280f;display:flex;flex-direction:column;gap:10px;position:relative}.syllabus-title{font-size:30px;margin:0;font-weight:700;color:#0f172a}.form-popup{position:absolute;top:60px;left:20px;width:90%;background:#fff;border:1px solid #ccc;border-radius:8px;padding:15px;z-index:20;box-shadow:0 4px 12px #0003}.header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.header h2{font-size:20px;margin:0;font-weight:600}.syllabus-container .edit-btn{align-self:flex-end;min-height:40px;min-width:230px;padding:8px 16px;background-color:var(--primary-accent-dark, #1d4ed8)!important;color:var(--text-on-primary, #ffffff)!important;border:1px solid var(--primary-accent-dark, #1e40af)!important;cursor:pointer;border-radius:1px!important;font-size:14px;font-weight:700;margin-bottom:4px;text-align:center;letter-spacing:.2px;box-shadow:0 2px 8px #1d4ed838;transition:background-color .2s ease,transform .2s ease,box-shadow .2s ease}.syllabus-container .edit-btn:hover{background-color:var(--primary-accent, #1e40af)!important;transform:translateY(-1px);box-shadow:0 4px 10px #1e40af4d}.syllabus-container .edit-btn:focus-visible{outline:3px solid rgba(59,130,246,.28);outline-offset:1px}.note{margin:4px 0 6px;color:#dc2626;font-size:14px;font-weight:600}.note span{font-weight:700}.pages{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:8px}.page-btn{padding:8px 12px;border:1px solid #ccc;background-color:#fff;cursor:pointer;border-radius:2px;font-size:13px;font-weight:600;transition:all .2s ease}.page-btn:hover{background-color:#f0f0f0;border-color:#999}.page-btn.active{background-color:var(--primary-color, #2563eb);color:var(--text-on-primary, white);border-color:var(--primary-color, #2563eb)}.image-box{width:100%;height:280px;display:flex;align-items:center;justify-content:center;border:2px dashed #ccc;border-radius:8px;padding:10px;background-color:#fafafa;overflow:hidden;margin-bottom:15px}.flip-image{max-width:100%;max-height:100%;object-fit:contain;border-radius:5px;animation:flipIn .6s ease}.timetable-layout{position:relative!important;min-height:100%!important}.timetable-main-row{overflow:visible!important}.timetable-secondary-sidebar-wrapper{position:static!important;width:0!important;min-width:0!important;max-width:0!important;height:0!important;overflow:visible!important;border:none!important;background:transparent!important}.timetable-main-content.syllabus-main-content{overflow-y:auto!important;overflow-x:hidden!important}@keyframes flipIn{0%{opacity:0;transform:rotateY(90deg)}to{opacity:1;transform:rotateY(0)}}.bottom-buttons{display:flex;justify-content:space-between;gap:10px;margin-top:6px}.nav-btn{min-height:36px;padding:8px 16px;background-color:#f0f0f0;border:1px solid #ccc;cursor:pointer;border-radius:2px;font-size:13px;font-weight:600;transition:all .2s ease}.nav-btn:hover:not(:disabled){background-color:#e0e0e0;border-color:#999}.nav-btn:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 1100px){.sidebar,.timetable-secondary-sidebar-wrapper{width:140px;min-width:100px;max-width:160px;font-size:.95rem}.timetable-main-content{padding:10px 8px;margin-left:300px}.syllabus-container{max-width:760px;padding:14px}.image-box{height:240px}}@media (max-width: 900px){.timetable-main-row{flex-direction:column}.sidebar,.timetable-secondary-sidebar-wrapper{width:100%;min-width:0;max-width:none;margin-top:0;height:auto;min-height:0;border-radius:0;box-shadow:none;position:static;left:0}.timetable-main-content{margin-top:0;margin-left:0;padding:8px}.syllabus-container{max-width:100%;padding:12px}.image-box{height:220px}.pages{gap:6px}.page-btn{padding:6px 10px;font-size:12px}}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content-box{background:#fff;padding:30px 35px;border-radius:10px;width:450px;max-width:90%;max-height:80vh;overflow-y:auto;box-shadow:0 5px 25px #0000004d;animation:fadeIn .4s ease-in;position:relative}.close-btn{position:absolute;top:15px;right:20px;background:transparent;border:none;font-size:24px;cursor:pointer;color:#666;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s ease}.close-btn:hover{color:red;background-color:#f8f9fa}@keyframes fadeIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.form-label{margin-bottom:6px;font-size:14px;font-weight:500;color:#333;display:block}.form-control{font-size:14px;padding:8px 12px;border:1px solid #ccc;border-radius:4px;width:100%;box-sizing:border-box}.form-control:focus{outline:none;border-color:#4caf50;box-shadow:0 0 0 2px #4caf5033}.submit-btn,.btn-primary{padding:10px 16px;font-size:15px;border-radius:8px;margin-top:15px;font-weight:700}.text-danger{font-size:14px;margin-bottom:15px;line-height:1.4}.submit-btn{padding:10px 16px;background-color:var(--primary-color, #2563eb);border:none;color:var(--text-on-primary, white);font-size:15px;border-radius:8px;width:100%;margin-top:15px;cursor:pointer;font-weight:700;transition:background-color .2s ease,transform .2s ease}.submit-btn:hover{background-color:var(--primary-accent-dark, #1d4ed8);transform:translateY(-1px)}.edit-sylly{width:100%;margin-top:8px;padding:8px 16px;background-color:var(--primary-color, #2563eb);color:var(--text-on-primary, #ffffff);border:none;cursor:pointer;border-radius:8px;position:relative;animation:fadeIn .4s ease;font-size:16px;font-weight:700;margin-bottom:15px;text-align:center}.edit-sylly:hover{background-color:var(--primary-accent-dark, #1d4ed8)}.mb-3{margin-bottom:15px}.mb-3:last-child{margin-bottom:0}@media (max-width: 768px){.modal-content-box{width:90%;padding:20px 25px}.form-control{padding:6px 10px;font-size:13px}.form-label{font-size:13px}.close-btn{top:10px;right:15px;font-size:20px}}@keyframes fadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.app-container{display:flex;min-height:100vh;background:var(--dash-bg, #f8f9fa);margin:0;padding:0}.main-content-wrapper{width:calc(100% - 420px);margin:60px 0 0;padding:10px;background:var(--card-bg, #fff);min-height:calc(100vh - 60px)}.secondary-sidebar-wrapper{width:200px;min-width:200px;max-width:200px;margin:60px 0 0;padding:0;background:transparent;border-radius:0;box-shadow:none;display:flex;flex-direction:column;align-items:flex-start;z-index:101;position:fixed;left:220px;top:0;height:100vh;transition:transform .3s cubic-bezier(.4,0,.2,1)}.secondary-sidebar{width:200px;min-width:200px;max-width:200px;background:var(--card-bg, #fff);color:var(--text-color-primary, #000);border-radius:0;box-shadow:none;padding:0;margin:0;border:none;position:relative;z-index:1002}.teaching-main-content.syllabus-main-content{width:100%;padding:0}.lab-layout{min-height:100vh}.lab-layout .teaching-main-row{display:flex;align-items:flex-start;gap:6px;margin-left:0;padding:8px 10px 12px 0}.lab-layout .syllabus-secondary-sidebar-wrapper{width:200px;min-width:200px;flex-shrink:0}.labplanning-main-content{flex:1;min-width:0;padding-top:8px;padding-left:2px;padding-right:8px}.labplanning-main-content .plan-container{padding:18px;background-color:var(--card-bg, #fefefe);border:1px solid var(--card-border, #ccc);border-radius:12px;margin:0;box-shadow:0 2px 8px #0000001a;width:100%;max-width:100%}.labplanning-main-content .header-row{display:flex;justify-content:space-between;align-items:center;margin-top:-30px;flex-wrap:wrap;gap:16px}.labplanning-main-content .header-row h3{font-size:28px;font-weight:700;white-space:nowrap;color:var(--text-color-primary, #000);line-height:1.2;margin:0 0 0 -8px}.labplanning-main-content .button-group{display:flex;gap:10px;align-items:center;margin-top:16px;margin-right:18px}.labplanning-main-content .button-group .start-btn{background-color:var(--primary-color, green);color:var(--text-on-primary, white);padding:10px 14px;font-weight:600;border:none;border-radius:6px;cursor:pointer;margin:0;font-size:16px;display:inline-flex;align-items:center;justify-content:center;text-align:center;white-space:nowrap;transition:background-color .2s ease,box-shadow .15s ease,transform .02s ease}.labplanning-main-content .button-group .start-btn:hover{background-color:var(--primary-accent-dark, #0f7a0f)!important;color:var(--text-on-primary, #fff)!important;box-shadow:0 2px #00000026}.labplanning-main-content .button-group .start-btn:active{transform:translateY(1px)}.labplanning-main-content .tabs button{transition:background-color .3s ease,color .3s ease,box-shadow .2s ease,transform .02s ease}.labplanning-main-content .tabs button:hover{background-color:var(--primary-color, green)!important;color:var(--text-on-primary, #fff)!important;border-color:var(--primary-color, green)!important;box-shadow:0 2px #00000026}.labplanning-main-content .tabs .active{background:var(--primary-color, green)!important;color:var(--text-on-primary, #fff)!important;border:1px solid var(--primary-accent-dark, darkgreen)!important;box-shadow:inset 0 -2px #00000026}.labplanning-main-content .pagination .prev-btn,.labplanning-main-content .pagination .forward-btn{transition:background-color .2s ease,color .2s ease,border-color .2s ease,box-shadow .15s ease,transform .02s ease}.labplanning-main-content .pagination .prev-btn:hover:not(:disabled),.labplanning-main-content .pagination .forward-btn:hover:not(:disabled){background-color:var(--primary-color, green)!important;color:var(--text-on-primary, #fff)!important;border-color:var(--primary-color, green)!important;box-shadow:0 2px #00000026}.labplanning-main-content .Ciaan-details{width:100%;text-align:left;margin-top:10px;padding:5px 0;transition:background-color .3s ease,color .3s ease;cursor:default}.labplanning-main-content .Ciaan-details:hover{background-color:var(--primary-color, green);color:var(--text-on-primary, #ffffff)}.labplanning-main-content .Ciaan-details strong{color:var(--text-color-primary, #000000);transition:color .3s ease}.labplanning-main-content .Ciaan-details:hover strong{color:var(--text-on-primary, #fff0f0)}.labplanning-main-content .teaching .table-container{overflow-x:auto;overflow-y:auto;max-height:calc(100vh - 360px);padding-bottom:24px}.labplanning-main-content .lab-table{width:100%;border-collapse:collapse!important;border:2px solid var(--text-color-primary, black);margin-bottom:16px}.labplanning-main-content .lab-table th,.labplanning-main-content .lab-table td{border:1px solid var(--card-border, #ccc);padding:10px;text-align:center;font-size:13.5px;color:var(--text-color-primary, #000);white-space:normal}.labplanning-main-content .lab-table th:nth-child(1),.labplanning-main-content .lab-table td:nth-child(1){width:6%;min-width:50px}.labplanning-main-content .lab-table th:nth-child(2),.labplanning-main-content .lab-table td:nth-child(2){width:6%;min-width:50px}.labplanning-main-content .lab-table th:nth-child(3),.labplanning-main-content .lab-table td:nth-child(3){width:8%;min-width:60px}.labplanning-main-content .lab-table th:nth-child(4),.labplanning-main-content .lab-table td:nth-child(4){width:25%;min-width:200px;text-align:left}.labplanning-main-content .lab-table td.llo-cell,.labplanning-main-content .lab-table th.llo-cell,.labplanning-main-content .lab-table td.expt-name-cell,.labplanning-main-content .lab-table th.expt-name-cell{text-align:left!important}.labplanning-main-content .lab-table th:nth-child(5),.labplanning-main-content .lab-table td:nth-child(5){width:8%;min-width:60px}.labplanning-main-content .lab-table th:nth-child(6),.labplanning-main-content .lab-table td:nth-child(6){width:27%;min-width:200px;text-align:left}.labplanning-main-content .lab-table th:nth-child(7),.labplanning-main-content .lab-table td:nth-child(7){width:10%;min-width:100px}.labplanning-main-content .lab-table th:nth-child(8),.labplanning-main-content .lab-table td:nth-child(8){width:10%;min-width:100px}.labplanning-main-content .lab-table thead th{font-weight:700;text-align:left;border-top:2px solid var(--text-color-primary, black);border-bottom:2px solid var(--text-color-primary, black);border-left:2px solid var(--text-color-primary, black);border-right:2px solid var(--text-color-primary, black);padding:12px}.labplanning-main-content .lab-table thead th:first-child{border-left:2px solid var(--text-color-primary, black)}.labplanning-main-content .lab-table thead th:last-child{border-right:2px solid var(--text-color-primary, black)}.labplanning-main-content .lab-table tbody td{padding:12px;font-size:14px;text-align:left;border-left:1px solid var(--card-border, #ccc);border-right:1px solid var(--card-border, #ccc);border-bottom:1px solid var(--card-border, #ccc)}.labplanning-main-content .lab-table tbody td[rowspan]{border-bottom:2px solid var(--text-color-primary, black)!important}.labplanning-main-content .lab-table tbody tr.last td,.labplanning-main-content .lab-table tbody tr:last-child td{border-bottom:2px solid var(--text-color-primary, black)!important}.labplanning-main-content .lab-table th:first-child,.labplanning-main-content .lab-table td:first-child{border-left:2px solid var(--text-color-primary, black)!important}.labplanning-main-content .lab-table th:last-child,.labplanning-main-content .lab-table td:last-child{border-right:2px solid var(--text-color-primary, black)!important}.labplanning-main-content .lab-table tbody tr.first td{border-top:none}.labplanning-main-content .tabs{display:flex;gap:10px;margin-bottom:18px;margin-top:-8px}.labplanning-main-content .tabs button{background-color:var(--primary-light, #f5f5f5);border:1px solid var(--card-border, #ccc);padding:10px 14px;margin-right:8px;border-radius:8px;font-weight:600;font-size:15px;line-height:1.1;cursor:pointer;transition:background-color .3s ease,color .3s ease,box-shadow .2s ease,transform .02s ease}.labplanning-main-content .tabs button:hover{background-color:var(--primary-color, green);color:var(--text-on-primary, white);box-shadow:0 2px #00000026}.labplanning-main-content .tabs button:active{transform:translateY(1px)}.labplanning-main-content .tabs .active{background-color:var(--primary-color, green);color:var(--text-on-primary, white);border:1px solid var(--primary-accent-dark, darkgreen);box-shadow:inset 0 -2px #00000026}.labplanning-main-content .pagination{display:flex;justify-content:flex-end;margin-top:12px;margin-bottom:16px}.labplanning-main-content .prev-btn,.labplanning-main-content .forward-btn{background-color:var(--card-bg, white);color:var(--text-color-primary, black);padding:6px 14px;font-weight:700;border:1px solid var(--card-border, #ccc);border-radius:8px;cursor:pointer;font-size:16px;transition:background-color .2s ease,color .2s ease,border-color .2s ease,box-shadow .15s ease,transform .02s ease}.labplanning-main-content .pagination .prev-btn:hover:not(:disabled),.labplanning-main-content .pagination .forward-btn:hover:not(:disabled){background-color:var(--primary-color, green);color:var(--text-on-primary, white);border-color:var(--primary-color, green);box-shadow:0 2px #00000026}.labplanning-main-content .pagination .prev-btn:active,.labplanning-main-content .pagination .forward-btn:active{transform:translateY(1px)}.labplanning-main-content .prev-btn:disabled{background-color:var(--primary-light, #ccc);cursor:not-allowed}@media (max-width: 1024px){.sidebar{width:200px}.secondary-sidebar-wrapper{left:200px;width:200px}.main-content-wrapper{margin-left:400px;width:calc(100% - 400px);padding:8px}.labplanning-main-content .plan-container{margin:-10px 0 15px 240px;padding:15px;width:100%;max-width:100%}.labplanning-main-content .lab-table th,.labplanning-main-content .lab-table td{padding:10px;min-width:100px}}@media (max-width: 768px){.sidebar{width:0;transform:translate(-100%);padding-top:10px}.secondary-sidebar-wrapper{position:fixed;left:0;transform:translate(-100%);width:220px;max-width:80vw;margin-top:0;background:transparent}.secondary-sidebar-wrapper.visible{transform:translate(0)}.secondary-sidebar{width:100%;max-width:80vw;padding:10px;box-shadow:2px 0 8px #00000014;background:#fff}.main-content-wrapper{margin-left:0;width:100%;margin-top:60px;padding:5px}.labplanning-main-content .plan-container{margin:-52px auto 0!important;max-width:100vw!important;width:100%!important;padding:12px!important;height:auto!important}.labplanning-main-content .header-row{flex-direction:column!important;align-items:flex-start!important;gap:8px!important;text-align:left!important;margin-top:0!important;margin-bottom:10px!important;border-bottom:none!important}.labplanning-main-content .header-row h3{font-size:26px!important;line-height:1.2!important;white-space:nowrap!important;border-bottom:3px solid green!important;display:inline-block!important;padding-bottom:6px!important;margin:0 0 10px!important}.labplanning-main-content .header-row h3:after{content:none}.labplanning-main-content .button-group{gap:10px!important;margin-top:0!important;margin-bottom:10px!important;margin-left:-16px!important;flex-wrap:wrap!important;justify-content:flex-start!important;width:100%!important}.labplanning-main-content .button-group .start-btn{font-size:14px!important;padding:8px 14px!important;height:30px!important;line-height:1.1!important;border-radius:6px!important;white-space:nowrap!important;flex:1 1 auto!important;min-width:auto!important}.labplanning-main-content .table-container{overflow-x:auto;overflow-y:auto;max-height:calc(100% - 220px);padding-bottom:8px;border:2px solid #000!important;border-radius:8px}.labplanning-main-content .lab-table{min-width:1250px;width:100%;border-collapse:collapse;border:2px solid #000;border-bottom:2px solid #000!important;table-layout:fixed}.labplanning-main-content .lab-table thead{display:table-header-group!important}.labplanning-main-content .lab-table tbody{display:table-row-group!important}.labplanning-main-content .lab-table tr{display:table-row!important;margin-bottom:0!important;border:none!important;padding:0!important;border-radius:0!important;background:transparent!important}.labplanning-main-content .lab-table th,.labplanning-main-content .lab-table td{display:table-cell!important;text-align:left!important;padding:8px 4px!important;border-top:1px solid #ccc!important;border-bottom:1px solid #ccc!important;border-left:1px solid #ccc!important;border-right:1px solid #ccc!important;position:static!important;white-space:normal!important}.labplanning-main-content .lab-table thead th{border-top:2px solid #000!important;border-bottom:2px solid #000!important}.labplanning-main-content .lab-table thead th:first-child,.labplanning-main-content .lab-table tbody td:first-child{border-left:2px solid #000!important}.labplanning-main-content .lab-table thead th:last-child,.labplanning-main-content .lab-table tbody td:last-child{border-right:2px solid #000!important}.labplanning-main-content .lab-table tbody td[rowspan]{border-bottom:2px solid #000!important}.labplanning-main-content .lab-table tbody tr:last-child td{border-bottom:2px solid #000!important}.labplanning-main-content .lab-table td:before{content:none!important}.labplanning-main-content .plan-container{box-sizing:border-box}.labplanning-main-content .header-row{flex-direction:column!important;align-items:flex-start!important;gap:8px!important}.labplanning-main-content .header-row h3{font-size:26px!important;line-height:1.2!important;white-space:nowrap!important;border-bottom:3px solid green!important;display:inline-block!important;padding-bottom:6px!important;margin:0 0 8px!important}.labplanning-main-content .button-group{width:100%!important;justify-content:flex-start!important;margin-top:20px!important;margin-bottom:8px!important;margin-left:-16px!important;gap:8px!important;flex-wrap:wrap!important}.labplanning-main-content .button-group .start-btn{padding:8px 14px!important;font-size:12px!important;height:30px!important;line-height:1.1!important;border-radius:6px!important;white-space:nowrap!important;flex:1 1 auto!important;min-width:120px!important}.labplanning-main-content .pagination{display:flex!important;flex-wrap:nowrap!important;gap:6px!important;justify-content:flex-end!important;overflow-x:auto!important;scrollbar-width:none}.labplanning-main-content .pagination::-webkit-scrollbar{display:none}.labplanning-main-content .prev-btn,.labplanning-main-content .forward-btn{flex:0 0 auto!important;margin-left:0!important;padding:6px 10px!important;font-size:12px!important}.labplanning-main-content .tabs{display:flex!important;flex-wrap:wrap!important;gap:6px!important;justify-content:center!important;align-items:center!important;margin-top:20px!important;margin-bottom:10px!important}.labplanning-main-content .tabs button{flex:0 1 auto!important;padding:6px 10px!important;font-size:12px!important;margin-right:0!important}}@media (max-width: 480px){.secondary-sidebar{padding:6px 2px}.secondary-sidebar-header{font-size:13px;padding:7px}.secondary-sidebar ul li{font-size:11px;padding:6px}.sidebar.mobile.visible{width:260px}.labplanning-main-content .plan-container{padding:8px;width:100%;margin:5px 0}.labplanning-main-content .lab-table td{padding:6px}}.labplanning-main-content .prev-btn:hover,.labplanning-main-content .forward-btn:hover{background-color:green!important;color:#fff!important;border-color:green!important;box-shadow:none!important}.labplanning-main-content .lab-table tbody td[rowspan]{border-bottom:2px solid black!important}@media (max-width: 768px){.lab-layout .teaching-main-row{padding:8px!important;gap:0!important}.lab-layout .syllabus-secondary-sidebar-wrapper{width:0!important;min-width:0!important;flex:0 0 0!important;overflow:visible!important}.labplanning-main-content{width:100%!important;padding:8px!important}.labplanning-main-content .plan-container{margin:0!important;width:100%!important;max-width:100%!important;padding:12px!important}.labplanning-main-content .header-row h3{font-size:20px!important;white-space:normal!important;word-break:break-word!important;margin:0 0 8px!important}.labplanning-main-content .button-group{width:100%!important;margin:0!important;display:flex!important;flex-wrap:wrap!important;justify-content:flex-start!important;gap:8px!important}.labplanning-main-content .button-group .start-btn{flex:0 1 auto!important;min-width:120px!important;margin:0!important;height:auto!important;min-height:34px!important}.labplanning-main-content .tabs{overflow-x:auto!important;justify-content:flex-start!important;flex-wrap:nowrap!important;padding-bottom:4px}.labplanning-main-content .lab-table{min-width:980px!important}.labplanning-main-content .pagination{margin-top:12px!important;justify-content:flex-start!important}}.labplanning-main-content .plan-container{border-radius:16px!important;border:1px solid var(--card-border, #d8e3f2)!important;box-shadow:0 12px 30px #0d234814!important;background:var(--card-bg, #ffffff)!important}.labplanning-main-content .header-row,.labplanning-main-content .tabs,.labplanning-main-content .teaching{margin-left:0}.labplanning-main-content .header-row{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:0px;margin-bottom:0!important}.labplanning-main-content .tabs{display:flex;gap:10px;margin-bottom:20px;margin-top:20px}.labplanning-main-content .tabs button:hover{background-color:green;color:#fff}.labplanning-main-content .tabs .active{background:green;color:#fff;font-weight:700}.labplanning-main-content .teaching .table-container{width:100%;overflow-x:auto;overflow-y:auto;max-height:calc(100vh - 220px)!important;padding-bottom:8px;border:2px solid #000!important;border-radius:8px}.labplanning-main-content .lab-table{width:100%;border-collapse:collapse;border:2px solid #000;border-bottom:2px solid #000!important;table-layout:fixed}.labplanning-main-content .lab-table th,.labplanning-main-content .lab-table td{padding:5px 4px!important;text-align:center;font-size:12px!important;border:1px solid #ccc;word-wrap:break-word}.labplanning-main-content .lab-table thead th{position:sticky;top:0;z-index:2;border-top:2px solid black;border-bottom:2px solid black;border-left:2px solid black;border-right:2px solid black;padding:6px!important}.labplanning-main-content .lab-table thead th:first-child{border-left:2px solid black}.labplanning-main-content .lab-table thead th:last-child{border-right:2px solid black}.labplanning-main-content .lab-table tbody td{border-left:2px solid #000;border-right:2px solid #000;border-bottom:1px solid #ccc;vertical-align:middle;padding:5px 4px!important;font-size:12px!important}.labplanning-main-content .lab-table tbody tr:last-child td{border-bottom:2px solid #000!important}.labplanning-main-content .lab-table thead th:nth-child(1){width:55px!important;min-width:55px!important}.labplanning-main-content .lab-table thead th:nth-child(2){width:55px!important;min-width:55px!important}.labplanning-main-content .lab-table thead th:nth-child(3){width:60px!important;min-width:60px!important}.labplanning-main-content .lab-table thead th:nth-child(4){width:85px!important;min-width:85px!important}.labplanning-main-content .lab-table thead th:nth-child(5){width:70px!important;min-width:70px!important}.labplanning-main-content .lab-table thead th:nth-child(6){width:auto!important;text-align:left!important}.labplanning-main-content .lab-table thead th:nth-child(7){width:110px!important;min-width:110px!important}.labplanning-main-content .lab-table thead th:nth-child(8){width:110px!important;min-width:110px!important}.labplanning-main-content .lab-table td.expt-name-cell{text-align:left!important}@media (max-width: 1024px){.labplanning-main-content .lab-table{min-width:950px}.labplanning-main-content .lab-table th,.labplanning-main-content .lab-table td{font-size:11px!important;padding:5px 3px!important}.labplanning-main-content .lab-table thead th:nth-child(1){min-width:50px!important}.labplanning-main-content .lab-table thead th:nth-child(2){min-width:50px!important}.labplanning-main-content .lab-table thead th:nth-child(3){min-width:55px!important}.labplanning-main-content .lab-table thead th:nth-child(4){min-width:75px!important}.labplanning-main-content .lab-table thead th:nth-child(5){min-width:60px!important}.labplanning-main-content .lab-table thead th:nth-child(6){min-width:150px!important}.labplanning-main-content .lab-table thead th:nth-child(7){min-width:95px!important}.labplanning-main-content .lab-table thead th:nth-child(8){min-width:95px!important}}@media (max-width: 768px){.labplanning-main-content{padding-top:60px}.labplanning-main-content .plan-container{margin:-52px auto 0!important;max-width:100vw!important;width:100%!important;padding:12px!important;height:auto!important}.labplanning-main-content .header-row h3{text-align:center!important;display:inline-block!important;width:auto!important;margin:0 auto!important;align-self:center!important}.labplanning-main-content .table-container{overflow-x:auto;overflow-y:auto;max-height:calc(100% - 220px);padding-bottom:8px;border:2px solid #000!important;border-radius:8px}.labplanning-main-content .lab-table{min-width:1250px;width:100%;border-collapse:collapse;border:2px solid #000;border-bottom:2px solid #000!important;table-layout:fixed}.labplanning-main-content .lab-table thead{display:table-header-group!important}.labplanning-main-content .lab-table tbody{display:table-row-group!important}.labplanning-main-content .lab-table tr{display:table-row!important;margin-bottom:0!important;border:none!important;padding:0!important;border-radius:0!important;background:transparent!important}.labplanning-main-content .lab-table th,.labplanning-main-content .lab-table td{display:table-cell!important;text-align:center!important;padding:8px 4px!important;border-top:1px solid #ccc!important;border-bottom:1px solid #ccc!important;border-left:2px solid #000!important;border-right:2px solid #000!important;position:static!important;white-space:normal!important}.labplanning-main-content .lab-table thead th{border-top:2px solid #000!important;border-bottom:2px solid #000!important}.labplanning-main-content .lab-table thead th:first-child,.labplanning-main-content .lab-table tbody td:first-child{border-left:2px solid #000!important}.labplanning-main-content .lab-table thead th:last-child,.labplanning-main-content .lab-table tbody td:last-child{border-right:2px solid #000!important}.labplanning-main-content .lab-table tbody tr:last-child td{border-bottom:2px solid #000!important}.labplanning-main-content .lab-table td:before{content:none!important}.labplanning-main-content .plan-container{box-sizing:border-box}.labplanning-main-content .header-row{flex-direction:column!important;align-items:flex-start!important;gap:8px!important;text-align:left!important;margin-top:0!important;margin-bottom:10px!important;border-bottom:none!important}.labplanning-main-content .header-row h3{font-size:26px!important;line-height:1.2!important;white-space:nowrap!important;border-bottom:3px solid green!important;display:inline-block!important;padding-bottom:6px!important;margin:0 0 10px!important}.labplanning-main-content .header-row h3:after{content:none}.labplanning-main-content .button-group{margin-left:0!important;flex-wrap:wrap!important;align-items:flex-start!important;margin-bottom:10px!important}.labplanning-main-content .button-group .start-btn{flex:1 1 45%!important;min-width:120px!important;margin-bottom:8px!important}}.labplanning-main-content .pagination::-webkit-scrollbar{display:none}.labplanning-main-content .prev-btn,.labplanning-main-content .forward-btn{flex:0 0 auto!important;margin-left:0!important;padding:6px 10px!important;font-size:12px!important}@media (max-width: 768px){.labplanning-main-content .tabs{display:flex!important;flex-wrap:wrap!important;gap:8px!important;justify-content:flex-start!important;align-items:center!important;margin-top:12px!important;margin-bottom:10px!important}.labplanning-main-content .tabs button{flex:0 1 auto!important;padding:10px 14px!important;font-size:14px!important;margin-right:0!important}}@media (max-width: 768px){.labplanning-main-content .header-row{align-items:center!important;position:relative}.labplanning-main-content .header-row:after{content:"";display:block;width:100%;border-bottom:1px solid #e0e0e0;margin-top:8px}.labplanning-main-content .button-group{width:100%!important;justify-content:center!important;align-items:center!important;margin-left:0!important;gap:10px!important;flex-wrap:wrap!important}.labplanning-main-content .button-group .start-btn{flex:0 0 auto!important}}@media (min-width: 769px){.labplanning-main-content .prev-btn,.labplanning-main-content .forward-btn{padding:10px 16px!important;font-size:18px!important;border-radius:10px!important;font-weight:700!important}}.lab-layout{position:relative!important;min-height:100%!important}.lab-layout .teaching-main-row{overflow:visible!important}.lab-layout .syllabus-secondary-sidebar-wrapper{position:static!important;width:0!important;min-width:0!important;max-width:0!important;height:0!important;overflow:visible!important}.lab-layout .labplanning-main-content{overflow-y:auto!important;overflow-x:hidden!important}.tps-modal .plan-container{margin:20px;padding:20px;background:#fff;border-radius:6px;box-shadow:0 2px 8px #0000001a}.tps-modal .modal-header{background:#fff;color:#333;padding:16px 20px 12px;font-size:20px;font-weight:600;border-bottom:1px solid #e5e7eb;border-radius:0;margin-bottom:0}.tps-modal-header{background:#fff;color:#333;padding:20px 22px 12px;font-size:28px;font-weight:700;border-bottom:1px solid #e5e7eb;border-top-left-radius:8px;border-top-right-radius:8px}.tps-modal{position:relative}.tps-close-btn{position:absolute;top:14px;right:16px;width:36px;height:36px;background:transparent;border:none;color:#888;border-radius:50%;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;font-size:0;transition:transform .25s ease,background-color .2s ease,color .2s ease}.tps-close-btn:before,.tps-close-btn:after{content:"";position:absolute;left:50%;top:50%;width:16px;height:2px;background-color:currentColor;border-radius:1px;transform-origin:center}.tps-close-btn:before{transform:translate(-50%,-50%) rotate(45deg)}.tps-close-btn:after{transform:translate(-50%,-50%) rotate(-45deg)}.tps-close-btn:hover{background-color:#f1f3f5;color:red;transform:rotate(90deg)}.tps-close-btn:focus-visible{outline:3px solid rgba(76,175,80,.35);outline-offset:2px}.tps-modal .form-grid{display:block;overflow-x:auto;overflow-y:visible;border:1px solid #cfd4da;border-radius:10px;background:#fff;background-clip:padding-box;width:95%;margin:20px auto 15px;text-align:center}.tps-modal .form-grid>.form-labels,.tps-modal .form-grid>.form-row{min-width:750px}.tps-modal .form-grid::-webkit-scrollbar{height:10px}.tps-modal .form-grid::-webkit-scrollbar-track{background:#e9ecef;border-radius:8px}.tps-modal .form-grid::-webkit-scrollbar-thumb{background:#bdbdbd;border-radius:8px;border:2px solid #e9ecef}.tps-modal .form-grid{scrollbar-color:#bdbdbd #e9ecef;scrollbar-width:thin}.tps-modal .form-labels{display:grid;grid-template-columns:1.3fr 1.8fr 1.2fr 1.5fr;column-gap:12px;background-color:#eef2f7;color:#495057;padding:10px 14px;font-weight:600;position:sticky;top:0;z-index:1;border-bottom:1px solid #e1e5ea;background-image:linear-gradient(#e1e5ea,#e1e5ea),linear-gradient(#e1e5ea,#e1e5ea),linear-gradient(#e1e5ea,#e1e5ea);background-size:1px 100%,1px 100%,1px 100%;background-repeat:no-repeat;background-position:23.21% 0,55.36% 0,76.79% 0}.tps-modal .form-row{display:grid;grid-template-columns:1.3fr 1.8fr 1.2fr 1.5fr;column-gap:12px;padding:10px 14px;border-bottom:1px solid #eef1f4;justify-items:center;align-items:center;background-image:linear-gradient(#eef1f4,#eef1f4),linear-gradient(#eef1f4,#eef1f4),linear-gradient(#eef1f4,#eef1f4);background-size:1px 100%,1px 100%,1px 100%;background-repeat:no-repeat;background-position:23.21% 0,55.36% 0,76.79% 0}.tps-modal input,.tps-modal select,.tps-modal .weekwise-form-container .form-input{padding:8px 10px;border:1px solid #dde3ea;border-radius:8px;width:80%!important;box-sizing:border-box;background:#f8fbff;box-shadow:inset 0 1px 3px #0000000f;font-size:14px;font-family:inherit}.tps-modal select.form-input{appearance:auto;-webkit-appearance:menulist;-moz-appearance:menulist;cursor:pointer;min-height:38px;line-height:1.5}.tps-modal select.form-input:disabled{cursor:not-allowed;opacity:.6;background:#e9ecef}.tps-modal select.form-input option{padding:8px;background:#fff;color:#333}.tps-modal select.form-input option:disabled{color:#999;font-style:italic}.tps-modal .weekwise-form-container .form-row .form-input,.tps-modal .weekwise-form-container .form-row input.form-input,.tps-modal .weekwise-form-container .form-row select.form-input,.tps-modal .weekwise-form-container .form-row textarea.form-input{width:90%!important;justify-self:center!important;align-self:center!important;padding:6px 8px!important;margin-right:-10px}.tps-modal .weekwise-form-container .form-input:focus,.tps-modal .weekwise-form-container select:focus,.tps-modal .weekwise-form-container input:focus{outline:none;border-color:#81c784;box-shadow:0 0 0 3px #4caf5033}.tps-modal .week-select{padding:6px 10px}.tps-modal .weekwise-form-container{flex:1;overflow-y:auto;overflow-x:hidden;padding:0 20px 20px;min-height:0;scroll-behavior:smooth}.tps-modal .weekwise-form-container::-webkit-scrollbar{width:8px}.tps-modal .weekwise-form-container::-webkit-scrollbar-track{background:#f1f1f1;border-radius:10px}.tps-modal .weekwise-form-container::-webkit-scrollbar-thumb{background:#888;border-radius:10px}.tps-modal .weekwise-form-container::-webkit-scrollbar-thumb:hover{background:#555}.tps-modal .submission-message{margin:15px auto 0;padding:12px 20px;border-radius:8px;text-align:center;font-size:14px;font-weight:600;max-width:95%;animation:slideIn .3s ease-out}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.tps-modal .button-group{display:flex;flex-direction:row-reverse;justify-content:space-between;align-items:center;gap:16px;padding:16px 20px;background:#f8f9fa;border-top:1px solid #eee;margin-top:0;width:100%;flex-shrink:0;position:sticky;bottom:0;z-index:10}.tps-modal .button-group .btn{margin:0}.tps-modal .btn{padding:14px 22px;font-weight:700;font-size:16px;border:none;border-radius:10px;cursor:pointer;min-width:100px;box-shadow:0 4px 10px #0000001f;transition:box-shadow .2s ease,transform .02s ease,background-color .2s ease;margin-bottom:-10px!important}.tps-modal .btn:hover{box-shadow:0 6px 14px #00000029}.tps-modal .btn:active{transform:translateY(1px)}.tps-modal .button-group .btn,.tps-modal .action-buttons-container .btn,.tps-modal .button-group .btn.submit,.tps-modal .button-group .btn.cancel{padding:12px 14px!important;font-weight:600;font-size:16px;border-radius:8px}.tps-modal .btn.cancel{background-color:#d32f2f;color:#fff}.tps-modal .btn.submit,.tps-modal .action-buttons-container button:first-child{background-color:#2e7d32;color:#fff}.tps-modal .button-group .btn.submit{margin-right:auto}.tps-modal .button-group .btn.cancel{margin-left:auto}.tps-modal .button-group .btn.cancel,.tps-modal .action-buttons-container .btn.cancel{background-color:#d32f2f!important;border-color:#d32f2f!important;color:#fff!important}.tps-modal .button-group .btn.cancel:hover,.tps-modal .button-group .btn.cancel:focus,.tps-modal .action-buttons-container .btn.cancel:hover,.tps-modal .action-buttons-container .btn.cancel:focus{background-color:#b58f8f!important;border-color:#b58f8f!important}.tps-modal .button-group .btn.cancel:disabled,.tps-modal .action-buttons-container .btn.cancel:disabled{background-color:#e57373!important;border-color:#e57373!important;color:#fff!important;opacity:1!important}@media (max-width: 576px){.tps-modal{max-height:80vh;display:flex;flex-direction:column;overflow:hidden}.tps-modal .weekwise-form-container .form-grid{width:90%;margin-left:15px;margin-right:70px;max-height:calc(85vh - 160px)!important;margin-top:20px;overflow-y:auto;overflow-x:auto;border:1px solid #cfd4da;border-radius:12px;background:#fff;background-clip:padding-box;padding-bottom:0}.tps-modal .weekwise-form-container .form-labels{padding:8px 10px;font-size:13px;column-gap:8px}.tps-modal .weekwise-form-container .form-row{padding:8px 10px;column-gap:8px;justify-items:start;min-height:56px}.tps-modal .weekwise-form-container .form-input,.tps-modal .weekwise-form-container .form-row .form-input,.tps-modal .weekwise-form-container .form-row input.form-input,.tps-modal .weekwise-form-container .form-row select.form-input,.tps-modal .weekwise-form-container .form-row textarea.form-input{font-size:13px;padding:6px 8px;width:92%}.tps-modal .button-group{padding:8px 10px;gap:8px;position:sticky;bottom:0;background:#f8f9fa;z-index:2;display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:space-between;align-items:center;width:100%}.tps-modal .button-group .btn{padding:8px 10px!important;font-size:13px;min-width:80px!important;width:auto;flex:0 0 auto;border-radius:8px;margin:0!important}.tps-modal .button-group .btn.submit{order:1;padding:8px 10px!important;width:250px!important}.tps-modal .button-group .btn.cancel{order:2;padding:8px 10px!important;width:250px!important}}.tps-modal .plan-table-wrapper{overflow-x:auto!important;-webkit-overflow-scrolling:touch;margin-top:20px;padding-bottom:0;border:1px solid #cfd4da;border-radius:10px;background:#fff}.tps-modal .plan-table{width:100%;border-collapse:collapse;min-width:980px!important;table-layout:fixed;border:0}.tps-modal .plan-table col.tp-col-co{width:180px}.tps-modal .plan-table col.tp-col-chapter{width:17%}.tps-modal .plan-table col.tp-col-tlo{width:12%}.tps-modal .plan-table col.tp-col-subtopic{width:17%}.tps-modal .plan-table col.tp-col-start-date{width:220px}.tps-modal .plan-table col.tp-col-method{width:14%}.tps-modal .plan-table col.tp-col-action{width:48px}.tps-modal .plan-table th,.tps-modal .plan-table td{border:1px solid #e0e0e0;padding:8px 4px;text-align:center;vertical-align:middle;font-size:13px;white-space:normal}.tps-modal .plan-table th{background-color:#f0f2f5;font-weight:600;color:#495057;position:sticky;top:0;z-index:10}.tps-modal .plan-table th:nth-child(1),.tps-modal .plan-table td:nth-child(1),.tps-modal .plan-table td.co-cell{width:180px!important;max-width:180px!important;min-width:180px!important;padding:8px 4px!important;overflow:hidden}.tps-modal select.co-select{width:100%!important;max-width:172px!important;min-width:0!important;padding:6px 4px!important;font-size:13px!important;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.tps-modal .plan-table th:nth-child(2),.tps-modal .plan-table td:nth-child(2){width:17%!important;min-width:150px!important}.tps-modal select.chapter-select{max-width:180px!important}.tps-modal .plan-table th:nth-child(3),.tps-modal .plan-table td:nth-child(3){width:12%!important;min-width:110px!important}.tps-modal .plan-table th:nth-child(4),.tps-modal .plan-table td:nth-child(4){width:17%!important;min-width:150px!important}.tps-modal .plan-table th:nth-child(5),.tps-modal .plan-table td:nth-child(5),.tps-modal .plan-table td.start-date-cell{width:220px!important;min-width:220px!important;max-width:220px!important;padding:6px 10px!important;vertical-align:middle}.tps-modal .plan-table th:nth-child(5){white-space:nowrap}.tps-modal .start-date-field{position:relative;display:flex;align-items:center;width:100%;min-width:200px;gap:0}.tps-modal .start-date-text{flex:1 1 auto;width:100%!important;min-width:160px!important;padding:8px 36px 8px 10px!important;border:1px solid #dde3ea!important;border-radius:8px!important;font-size:13px!important;font-variant-numeric:tabular-nums;letter-spacing:.02em;color:#1f2937;background-color:#fff!important;cursor:pointer;box-sizing:border-box!important;text-align:left}.tps-modal .start-date-text:disabled{background-color:#e9ecef!important;cursor:not-allowed;color:#6c757d}.tps-modal .start-date-text::placeholder{color:#9ca3af}.tps-modal .start-date-picker-btn{position:absolute;right:4px;top:50%;transform:translateY(-50%);display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:none;border-radius:6px;background:transparent;color:#4b5563;cursor:pointer;transition:background-color .2s ease,color .2s ease}.tps-modal .start-date-picker-btn:hover:not(:disabled){background-color:#eef4ff;color:#1f62cf}.tps-modal .start-date-picker-btn:disabled{cursor:not-allowed;opacity:.45}.tps-modal .start-date-native-picker{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;opacity:0;pointer-events:none}.tps-modal .start-date-text:focus{outline:none!important;border-color:#81c784!important;box-shadow:0 0 0 3px #4caf5033!important}.tps-modal .plan-table th:nth-child(6),.tps-modal .plan-table td:nth-child(6){width:14%!important;min-width:120px!important}.tps-modal .plan-table th:nth-child(7),.tps-modal .plan-table td:nth-child(7){width:48px!important;min-width:48px!important;max-width:48px!important;padding:8px 2px!important}.tps-modal .plan-table select,.tps-modal .plan-table input:not(.start-date-text):not(.start-date-native-picker){width:100%!important;padding:6px 8px!important;border:1px solid #ddd!important;border-radius:8px!important;font-size:13px!important;box-sizing:border-box!important;background-color:#fff!important;box-shadow:inset 0 1px 3px #0000000f!important;transition:border-color .2s ease,box-shadow .2s ease!important}.tps-modal .plan-table input[type=date]:not(.start-date-native-picker){min-width:100%!important}.tps-modal .plan-table select:focus,.tps-modal .plan-table input:focus{outline:none!important;border-color:#81c784!important;box-shadow:0 0 0 3px #4caf5033!important}.tps-modal .plan-table .tlo-multiselect-dropdown input[type=checkbox]{width:auto!important;height:auto!important;min-width:unset!important;box-shadow:none!important;border:none!important;margin:3px 6px 0 0!important;cursor:pointer!important;padding:0!important;background:transparent!important;flex-shrink:0!important}.teaching-main-content.syllabus-main-content .plan-container{width:min(100%,1100px)!important;max-width:1100px!important;margin:0!important;overflow-x:hidden;background-color:var(--card-bg, #fefefe);border:1px solid var(--card-border, #ccc);border-radius:16px!important;box-shadow:0 2px 8px #0000001a;padding:18px;height:auto!important;min-height:60vh!important}.teaching-layout{min-height:100vh;padding-left:0}.teaching-main-row{display:flex;align-items:flex-start;gap:6px;margin-left:0;padding:8px 10px 12px 0}.teaching-layout .syllabus-secondary-sidebar-wrapper{width:200px;min-width:200px;flex-shrink:0}.teaching-main-content.syllabus-main-content{flex:1;min-width:0;margin-top:0!important;padding-top:8px!important;padding-left:2px}.teaching-main-content.syllabus-main-content .header-row{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:0px;margin-bottom:0!important}.teaching-main-content.syllabus-main-content .plan-actions-top-right{display:flex;gap:10px;align-items:center;margin-bottom:0!important}.teaching-main-content.syllabus-main-content .plan-actions-top-right .start-btn,.teaching-main-content.syllabus-main-content .plan-actions-top-right .action-buttons .start-btn{padding:8px 18px;border-radius:5px;cursor:pointer;margin:0;height:39px;display:flex;align-items:center;font-size:14px;border:none}.teaching-main-content.syllabus-main-content .action-buttons{display:flex;gap:10px;align-items:center;margin-top:5px}.teaching-main-content.syllabus-main-content .btn{padding:10px 15px;border-radius:5px;cursor:pointer;font-size:14px;transition:background-color .3s ease;border:none}.teaching-main-content.syllabus-main-content .btn.submit{background-color:var(--primary-color, green);color:var(--text-on-primary, white)}.teaching-main-content.syllabus-main-content .btn.submit:hover{background-color:var(--primary-accent-dark, green)}.teaching-main-content.syllabus-main-content .Ciaan-details{width:100%;text-align:left;margin-top:5px}.teaching-main-content.syllabus-main-content .tabs{display:flex;gap:10px;margin-bottom:18px;margin-top:-8px}.teaching-main-content.syllabus-main-content .tab{background-color:var(--primary-light, #f5f5f5);border:1px solid var(--card-border, #ccc);padding:8px 18px;margin-right:8px;border-radius:6px;font-weight:500;cursor:pointer;transition:background-color .3s ease,color .3s ease}.teaching-main-content .tabs button:hover{background-color:var(--primary-color, green);color:var(--text-on-primary, white)}.teaching-main-content.syllabus-main-content .tab.active,.teaching-main-content.syllabus-main-content .tab:active{background:var(--primary-color, green);color:var(--text-on-primary, #fff);font-weight:700}.teaching-main-content.syllabus-main-content .teaching .table-container{width:100%;overflow-x:auto;overflow-y:auto;max-height:calc(100% - 220px);padding-bottom:8px;border:2px solid var(--text-color-primary, #000)!important;border-radius:8px}.teaching-main-content.syllabus-main-content .teaching table{min-width:100%;width:100%;border-collapse:collapse;border:2px solid var(--text-color-primary, #000);border-bottom:2px solid var(--text-color-primary, #000)!important;table-layout:fixed}.teaching-main-content.syllabus-main-content .teaching th,.teaching-main-content.syllabus-main-content .teaching td{padding:8px 12px;text-align:left;font-size:12px;border:1px solid var(--card-border, #ccc);word-wrap:break-word}.teaching-main-content.syllabus-main-content .teaching th{background:var(--primary-light, #f8f9fa);font-weight:700;text-align:left;white-space:normal}.teaching-main-content.syllabus-main-content .teaching th:nth-child(1),.teaching-main-content.syllabus-main-content .teaching td:nth-child(1){width:8%!important;min-width:65px!important}.teaching-main-content.syllabus-main-content .teaching th:nth-child(2),.teaching-main-content.syllabus-main-content .teaching td:nth-child(2){width:8%!important;min-width:55px!important}.teaching-main-content.syllabus-main-content .teaching th:nth-child(3),.teaching-main-content.syllabus-main-content .teaching td:nth-child(3){width:25%!important;min-width:180px!important;white-space:normal}.teaching-main-content.syllabus-main-content .teaching th:nth-child(4),.teaching-main-content.syllabus-main-content .teaching td:nth-child(4){width:8%!important;min-width:55px!important}.teaching-main-content.syllabus-main-content .teaching th:nth-child(5),.teaching-main-content.syllabus-main-content .teaching td:nth-child(5){width:18%!important;min-width:140px!important;white-space:normal}.teaching-main-content.syllabus-main-content .teaching th:nth-child(6),.teaching-main-content.syllabus-main-content .teaching td:nth-child(6){width:14%!important;min-width:130px!important;white-space:nowrap}.teaching-main-content.syllabus-main-content .teaching th:nth-child(6),.teaching-main-content.syllabus-main-content .teaching td:nth-child(6).start-date-cell{text-align:center;vertical-align:middle;padding:8px 10px!important;font-variant-numeric:tabular-nums;letter-spacing:.01em}.teaching-main-content.syllabus-main-content .teaching th:nth-child(7),.teaching-main-content.syllabus-main-content .teaching td:nth-child(7){width:10%!important;min-width:110px!important;white-space:nowrap}.teaching-main-content.syllabus-main-content .teaching th:nth-child(8),.teaching-main-content.syllabus-main-content .teaching td:nth-child(8){width:11%!important;min-width:90px!important;white-space:normal}.teaching-main-content.syllabus-main-content .teaching thead th{position:sticky;top:0;z-index:2;border-top:2px solid var(--text-color-primary, black);border-bottom:2px solid var(--text-color-primary, black);border-left:2px solid var(--text-color-primary, black);border-right:2px solid var(--text-color-primary, black);padding:12px}.teaching-main-content.syllabus-main-content .teaching thead th:first-child{border-left:2px solid var(--text-color-primary, black)}.teaching-main-content.syllabus-main-content .teaching thead th:last-child{border-right:2px solid var(--text-color-primary, black)}.teaching-main-content.syllabus-main-content .teaching tbody td{border-left:2px solid var(--text-color-primary, black);border-right:2px solid var(--text-color-primary, black);border-bottom:1px solid var(--card-border, #ccc);vertical-align:top}.teaching-main-content.syllabus-main-content .teaching tr:nth-child(6) td,.teaching-main-content.syllabus-main-content .teaching tr:nth-child(11) td,.teaching-main-content.syllabus-main-content .teaching tr:nth-child(16) td,.teaching-main-content.syllabus-main-content .teaching tr:nth-child(21) td{border-top:2px solid var(--text-color-primary, black)!important;border-bottom:1px solid var(--card-border, #ccc)!important}.teaching-main-content.syllabus-main-content .teaching tbody tr:last-child td{border-bottom:2px solid var(--text-color-primary, black)!important}.teaching-main-content.syllabus-main-content .teaching tbody tr:first-child td{border-top:none}.teaching-main-content.syllabus-main-content .teaching td[rowspan]{vertical-align:middle;font-weight:700;font-size:14px}.teaching-main-content.syllabus-main-content .pagination{display:flex;gap:0px;justify-content:center;justify-content:flex-end;margin-right:30px;margin-top:10px;margin-bottom:-30px}.teaching-main-content.syllabus-main-content .pagination-btn{background-color:var(--card-bg, white);color:var(--text-color-primary, black);padding:6px 14px;font-weight:700;border:1px solid var(--card-border, #ccc);border-radius:8px;cursor:pointer;font-size:16px;transition:background-color .2s ease,color .2s ease;margin-left:10px}.teaching-main-content.syllabus-main-content .pagination-btn:hover:not(:disabled){background-color:var(--primary-color, green);color:var(--text-on-primary, white)}.teaching-main-content.syllabus-main-content .pagination-btn:disabled{background-color:var(--primary-light, #ddd);color:var(--text-color-secondary, #888);border:1px solid var(--card-border, #bbb);cursor:not-allowed}@media (max-width: 1024px){.teaching-main-content.syllabus-main-content .teaching table{min-width:100%!important}.teaching-main-content.syllabus-main-content .teaching th,.teaching-main-content.syllabus-main-content .teaching td{font-size:11px;padding:6px 3px}.teaching-main-content.syllabus-main-content .teaching th:nth-child(1),.teaching-main-content.syllabus-main-content .teaching td:nth-child(1){min-width:80px}.teaching-main-content.syllabus-main-content .teaching th:nth-child(2),.teaching-main-content.syllabus-main-content .teaching td:nth-child(2){min-width:140px}.teaching-main-content.syllabus-main-content .teaching th:nth-child(3),.teaching-main-content.syllabus-main-content .teaching td:nth-child(3){min-width:200px}.teaching-main-content.syllabus-main-content .teaching th:nth-child(4),.teaching-main-content.syllabus-main-content .teaching td:nth-child(4){min-width:70px}.teaching-main-content.syllabus-main-content .teaching th:nth-child(5),.teaching-main-content.syllabus-main-content .teaching td:nth-child(5){min-width:110px}.teaching-main-content.syllabus-main-content .teaching th:nth-child(6),.teaching-main-content.syllabus-main-content .teaching td:nth-child(6){min-width:130px}.teaching-main-content.syllabus-main-content .teaching th:nth-child(7),.teaching-main-content.syllabus-main-content .teaching td:nth-child(7){min-width:120px}}@media (max-width: 768px){.teaching-main-content.syllabus-main-content .plan-container{margin:-52px auto 0!important;max-width:100vw!important;width:100%!important;padding:12px!important;height:auto!important}.teaching-main-content.syllabus-main-content .teaching .table-container{overflow-x:auto;overflow-y:auto}.teaching-main-content.syllabus-main-content .teaching table{min-width:1250px;border-collapse:collapse;border:2px solid #222}.teaching-main-content.syllabus-main-content .teaching table thead{display:table-header-group!important}.teaching-main-content.syllabus-main-content .teaching table{display:table!important;width:auto!important}.teaching-main-content.syllabus-main-content .teaching tbody{display:table-row-group!important}.teaching-main-content.syllabus-main-content .teaching tr{display:table-row!important;margin-bottom:0!important;border:none!important;padding:0!important;border-radius:0!important;background:transparent!important}.teaching-main-content.syllabus-main-content .teaching th,.teaching-main-content.syllabus-main-content .teaching td{display:table-cell!important;min-width:unset}.teaching-main-content.syllabus-main-content .teaching td,.teaching-main-content.syllabus-main-content .teaching th{text-align:left!important;padding:8px 12px!important;border-top:1px solid #ccc!important;border-bottom:1px solid #ccc!important;border-left:2px solid #000!important;border-right:2px solid #000!important;position:static!important;white-space:normal!important}.teaching-main-content.syllabus-main-content .teaching thead th{border-top:2px solid #000!important;border-bottom:2px solid #000!important}.teaching-main-content.syllabus-main-content .teaching thead th:first-child,.teaching-main-content.syllabus-main-content .teaching tbody td:first-child{border-left:2px solid #000!important}.teaching-main-content.syllabus-main-content .teaching thead th:last-child,.teaching-main-content.syllabus-main-content .teaching tbody td:last-child{border-right:2px solid #000!important}.teaching-main-content.syllabus-main-content .teaching tbody tr:last-child td{border-bottom:2px solid #000!important}.teaching-main-content.syllabus-main-content .teaching td:before{content:none!important}.teaching-main-content.syllabus-main-content .plan-actions-top-right .btn{margin-top:0!important;margin-bottom:0!important}.teaching-main-content.syllabus-main-content .Ciaan-details{font-size:14px!important}.teaching-main-content.syllabus-main-content .Ciaan-details strong{font-size:15px!important}.teaching-main-content.syllabus-main-content .pagination{display:flex!important;flex-wrap:nowrap!important;gap:6px!important;justify-content:flex-end!important;overflow-x:auto!important;scrollbar-width:none}.teaching-main-content.syllabus-main-content .pagination::-webkit-scrollbar{display:none}.teaching-main-content.syllabus-main-content .pagination-btn{flex:0 0 auto!important;margin-left:0!important;padding:6px 10px!important;font-size:12px!important}.teaching-main-content.syllabus-main-content .tabs{display:flex!important;flex-wrap:nowrap!important;gap:6px!important;justify-content:center!important;align-items:center!important}.teaching-main-content.syllabus-main-content .tab{flex:0 1 auto!important;padding:6px 10px!important;font-size:12px!important;margin-right:0!important}.teaching-layout{padding-left:0!important;padding-right:0!important}.teaching-main-content.syllabus-main-content .plan-title{margin:0 0 8px!important}.teaching-main-content.syllabus-main-content .plan-title:after{content:none!important}.teaching-main-content.syllabus-main-content .header-row{flex-direction:column!important;align-items:flex-start!important;gap:8px!important}.teaching-main-content.syllabus-main-content .header-row h1,.teaching-main-content.syllabus-main-content .header-row h2,.teaching-main-content.syllabus-main-content .header-row h3,.teaching-main-content.syllabus-main-content .plan-title{font-size:26px!important;line-height:1.2!important;white-space:nowrap!important;border-bottom:3px solid green!important;display:inline-block!important;padding-bottom:6px!important;margin:0 0 8px!important}.teaching-main-content.syllabus-main-content .plan-actions-top-right{width:100%!important;justify-content:flex-start!important;margin-top:20px!important;margin-bottom:-20px!important;margin-left:-16px!important;gap:8px!important;flex-wrap:nowrap!important}.teaching-main-content.syllabus-main-content .plan-actions-top-right .btn,.teaching-main-content.syllabus-main-content .plan-actions-top-right .start-btn,.teaching-main-content.syllabus-main-content .plan-actions-top-right .action-buttons .start-btn{padding:18px 14px!important;font-size:12px!important;height:30px!important;line-height:1.1!important;border-radius:6px!important;white-space:nowrap!important}.teaching-main-content.syllabus-main-content .plan-container{box-sizing:border-box}.teaching-main-content.syllabus-main-content,.teaching-main-content.syllabus-main-content.has-secondary-sidebar{margin-top:0!important;padding-top:0!important}}@media (max-width: 480px){.teaching-main-content.syllabus-main-content .tab{padding:7px 8px}.teaching-main-content.syllabus-main-content .pagination-btn{padding:7px 10px;font-size:13px;margin-bottom:30px;margin-top:-10px}}.teaching-main-content.syllabus-main-content .Ciaan-details{width:100%;text-align:left;margin-top:5px;padding:5px 0;transition:background-color .3s ease,color .3s ease;cursor:default}.teaching-main-content.syllabus-main-content .Ciaan-details:hover{background-color:green;color:#fff}.teaching-main-content.syllabus-main-content .Ciaan-details strong{color:#000;transition:color .3s ease}.teaching-main-content.syllabus-main-content .Ciaan-details:hover strong{color:#fff0f0}.teaching-main-content.syllabus-main-content .btn{padding:10px 15px;border:none;border-radius:5px;cursor:pointer;font-size:14px;transition:background-color .3s ease}.teaching-main-content.syllabus-main-content .btn.submit{background-color:green;color:#fff}.teaching-main-content.syllabus-main-content .btn.submit:hover{background-color:green}.teaching-main-content.syllabus-main-content .plan-actions-top-right .action-buttons .btn.submit{background-color:green!important;color:#fff!important}.teaching-main-content.syllabus-main-content .plan-actions-top-right .action-buttons .btn.submit:hover{background-color:green!important}.teaching-main-content.syllabus-main-content .plan-header{display:flex;flex-direction:column;gap:10px;margin-bottom:10px}.teaching-main-content.syllabus-main-content .plan-button-container{align-self:flex-end}.header-row{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;margin-bottom:1rem}.plan-actions-top-right{margin-left:auto}.start-btn{padding:.5rem 1rem;font-size:14px}.teaching-main-content.syllabus-main-content .plan-actions-top-right{display:flex;justify-content:flex-end;margin-bottom:20px;margin-right:20px;margin-top:10px}.teaching-main-content.syllabus-main-content .plan-actions-top-right .btn{white-space:nowrap;padding:10px 14px!important;font-size:16px!important;border-radius:6px;min-width:max-content;height:auto!important;display:inline-flex;align-items:center;justify-content:center;margin-top:-30px!important;margin-bottom:-15px!important}.teaching-main-content.syllabus-main-content .prev-btn,.teaching-main-content.syllabus-main-content .forward-btn{background-color:#fff;color:#000;padding:6px 14px;font-weight:700;border:1px solid #ccc;border-radius:8px;cursor:pointer;font-size:16px;transition:background-color .2s,color .2s}.teaching-main-content.syllabus-main-content .prev-btn:disabled{background-color:#ccc;cursor:not-allowed}.teaching-main-content.syllabus-main-content .teaching tbody td[rowspan]{border-bottom:2px solid black!important}.teaching-main-content.syllabus-main-content .plan-title:after{content:"";display:block;height:2.5px;background-color:var(--primary-color, #28a745);width:60%;margin-left:-300px;margin-top:60px}.teaching-main-content.syllabus-main-content .plan-title{font-size:32px;color:#000;font-weight:700;line-height:1.2;margin:-40px 80px 0 -10px;padding:0;border-bottom:none!important}@media (max-width: 768px){.teaching-main-row{padding:8px!important;gap:0!important}.teaching-layout .syllabus-secondary-sidebar-wrapper{width:0!important;min-width:0!important;flex:0 0 0!important;overflow:visible!important}.teaching-main-content.syllabus-main-content{width:100%!important;padding:8px!important;margin-top:0!important}.teaching-main-content.syllabus-main-content .plan-container{margin:0!important;width:100%!important;max-width:100%!important;min-height:0!important;padding:12px!important}.teaching-main-content.syllabus-main-content .header-row h1,.teaching-main-content.syllabus-main-content .header-row h2,.teaching-main-content.syllabus-main-content .header-row h3,.teaching-main-content.syllabus-main-content .plan-title{font-size:20px!important;white-space:normal!important;word-break:break-word!important;margin:0 0 8px!important}.teaching-main-content.syllabus-main-content .plan-actions-top-right,.teaching-main-content.syllabus-main-content .action-buttons{width:100%!important;margin:0!important;display:flex!important;flex-wrap:wrap!important;gap:8px!important;justify-content:flex-start!important}.teaching-main-content.syllabus-main-content .plan-actions-top-right .btn,.teaching-main-content.syllabus-main-content .plan-actions-top-right .start-btn,.teaching-main-content.syllabus-main-content .plan-actions-top-right .action-buttons .start-btn{margin:0!important;height:auto!important;min-height:34px!important}.teaching-main-content.syllabus-main-content .tabs{overflow-x:auto!important;justify-content:flex-start!important;flex-wrap:nowrap!important;padding-bottom:4px}.teaching-main-content.syllabus-main-content .teaching table{min-width:980px!important}.teaching-main-content.syllabus-main-content .pagination{margin:12px 0 0!important;justify-content:flex-start!important}}.teaching-layout{position:relative!important;min-height:100%!important}.teaching-main-row{overflow:visible!important}.teaching-layout .syllabus-secondary-sidebar-wrapper{position:static!important;width:0!important;min-width:0!important;max-width:0!important;height:0!important;overflow:visible!important}.teaching-main-content.syllabus-main-content{overflow-y:auto!important;overflow-x:hidden!important}.teaching-layout{background:linear-gradient(180deg,var(--primary-light, #f7faff) 0%,var(--dash-bg, #eef3fb) 100%)!important}.teaching-main-content.syllabus-main-content .plan-container{border-radius:16px!important;border:1px solid var(--card-border, #d8e3f2)!important;box-shadow:0 12px 30px #0d234814!important;background:var(--card-bg, #ffffff)!important}.teaching-main-content.syllabus-main-content .header-row{padding-bottom:10px;border-bottom:1px solid var(--card-border, #e2eaf5);margin-bottom:10px!important}.teaching-main-content.syllabus-main-content .plan-title{margin:0!important;font-size:2rem!important;color:var(--text-color-primary, #132b4d)!important;border-bottom:none!important}.teaching-main-content.syllabus-main-content .plan-actions-top-right .btn,.teaching-main-content.syllabus-main-content .plan-actions-top-right .start-btn,.teaching-main-content.syllabus-main-content .plan-actions-top-right .action-buttons .start-btn,.teaching-main-content.syllabus-main-content .btn.submit{background:linear-gradient(180deg,var(--primary-color, #2f74e0) 0%,var(--primary-accent-dark, #1f62cf) 100%)!important;border:1px solid var(--primary-accent-dark, #1f5bbd)!important;color:var(--text-on-primary, #ffffff)!important;border-radius:10px!important;box-shadow:0 5px 14px #1f62cf33!important}.teaching-main-content.syllabus-main-content .plan-actions-top-right .btn:hover,.teaching-main-content.syllabus-main-content .plan-actions-top-right .start-btn:hover,.teaching-main-content.syllabus-main-content .plan-actions-top-right .action-buttons .start-btn:hover,.teaching-main-content.syllabus-main-content .btn.submit:hover{filter:brightness(.95)}.teaching-main-content.syllabus-main-content .Ciaan-details{background:var(--primary-light, #f3f7ff);border:1px solid var(--card-border, #d9e5f8);border-radius:10px;padding:9px 12px!important;color:var(--text-color-secondary, #425a7d)!important}.teaching-main-content.syllabus-main-content .Ciaan-details:hover{background:var(--primary-accent-light, #edf4ff)!important;color:var(--text-color-primary, #2a4570)!important}.teaching-main-content.syllabus-main-content .Ciaan-details strong,.teaching-main-content.syllabus-main-content .Ciaan-details:hover strong{color:var(--text-color-primary, #14335f)!important}.teaching-main-content.syllabus-main-content .tabs{gap:8px!important;margin-top:10px!important;margin-bottom:14px!important}.teaching-main-content.syllabus-main-content .tab{background:var(--primary-light, #f4f8ff)!important;border:1px solid var(--card-border, #cfdef2)!important;color:var(--text-color-secondary, #3b567f)!important;border-radius:10px!important;font-weight:600}.teaching-main-content.syllabus-main-content .tab.active,.teaching-main-content.syllabus-main-content .tab:active,.teaching-main-content.syllabus-main-content .tab:hover{background:var(--primary-color, #e6f0ff)!important;border-color:var(--primary-color, #aac5eb)!important;color:var(--text-on-primary, #ffffff)!important}.teaching-main-content.syllabus-main-content .teaching .table-container{border:1px solid var(--card-border, #d6e2f0)!important;border-radius:12px!important;box-shadow:inset 0 1px #fff9}.teaching-main-content.syllabus-main-content .teaching table{border:1px solid var(--card-border, #d6e2f0)!important;border-bottom:1px solid var(--card-border, #d6e2f0)!important}.teaching-main-content.syllabus-main-content .teaching thead th{background:var(--primary-light, #edf4ff)!important;color:var(--text-color-primary, #233f64)!important;border-top:1px solid var(--card-border, #d6e2f0)!important;border-bottom:1px solid var(--card-border, #d6e2f0)!important;border-left:1px solid var(--card-border, #d6e2f0)!important;border-right:1px solid var(--card-border, #d6e2f0)!important}.teaching-main-content.syllabus-main-content .teaching tbody td{border-left:1px solid var(--card-border, #dbe5f1)!important;border-right:1px solid var(--card-border, #dbe5f1)!important;border-bottom:1px solid var(--card-border, #dbe5f1)!important}.teaching-main-content.syllabus-main-content .teaching tbody tr:nth-child(odd) td{background:var(--card-bg, #fcfdff)}.teaching-main-content.syllabus-main-content .teaching tr:nth-child(6) td,.teaching-main-content.syllabus-main-content .teaching tr:nth-child(11) td,.teaching-main-content.syllabus-main-content .teaching tr:nth-child(16) td,.teaching-main-content.syllabus-main-content .teaching tr:nth-child(21) td{border-top:1px solid var(--card-border, #dbe5f1)!important}.teaching-main-content.syllabus-main-content .teaching tbody tr:last-child td,.teaching-main-content.syllabus-main-content .teaching tbody td[rowspan]{border-bottom:1px solid var(--card-border, #dbe5f1)!important}.teaching-main-content.syllabus-main-content .pagination{margin:14px 0 0!important;justify-content:flex-end!important;gap:8px!important}.teaching-main-content.syllabus-main-content .pagination-btn{background:var(--primary-color, #1f63d3)!important;color:var(--text-on-primary, #ffffff)!important;border:1px solid var(--primary-accent-dark, #1f5bbd)!important;border-radius:10px!important;font-size:.92rem!important;padding:8px 14px!important}.teaching-main-content.syllabus-main-content .pagination-btn:hover:not(:disabled){filter:brightness(.95)}@media (max-width: 768px){.teaching-main-content.syllabus-main-content .plan-title{font-size:1.35rem!important;white-space:normal!important}.teaching-main-content.syllabus-main-content .plan-actions-top-right{margin:0!important;gap:8px!important}.teaching-main-content.syllabus-main-content .plan-actions-top-right .btn,.teaching-main-content.syllabus-main-content .plan-actions-top-right .start-btn,.teaching-main-content.syllabus-main-content .plan-actions-top-right .action-buttons .start-btn{min-height:36px!important;padding:8px 12px!important;font-size:.82rem!important}}.teaching-main-content.syllabus-main-content .tutorial-table th:nth-child(1),.teaching-main-content.syllabus-main-content .tutorial-table td:nth-child(1){min-width:90px;width:10%!important}.teaching-main-content.syllabus-main-content .tutorial-table th:nth-child(2),.teaching-main-content.syllabus-main-content .tutorial-table td:nth-child(2){min-width:250px;width:25%!important}.teaching-main-content.syllabus-main-content .tutorial-table th:nth-child(3),.teaching-main-content.syllabus-main-content .tutorial-table td:nth-child(3){min-width:250px;width:25%!important}.teaching-main-content.syllabus-main-content .tutorial-table th:nth-child(4),.teaching-main-content.syllabus-main-content .tutorial-table td:nth-child(4){min-width:140px;width:10%!important}.teaching-main-content.syllabus-main-content .tutorial-table th:nth-child(5),.teaching-main-content.syllabus-main-content .tutorial-table td:nth-child(5){min-width:140px;width:10%!important}.teaching-main-content.syllabus-main-content .tutorial-table th:nth-child(6),.teaching-main-content.syllabus-main-content .tutorial-table td:nth-child(6){min-width:180px;width:20%!important}.plan-table-wrapper .plan-table th:nth-child(1),.plan-table-wrapper .plan-table td:nth-child(1){width:35%!important}.plan-table-wrapper .plan-table th:nth-child(2),.plan-table-wrapper .plan-table td:nth-child(2){width:25%!important}.plan-table-wrapper .plan-table th:nth-child(3),.plan-table-wrapper .plan-table td:nth-child(3){width:15%!important}.plan-table-wrapper .plan-table th:nth-child(4),.plan-table-wrapper .plan-table td:nth-child(4){width:20%!important}.plan-table-wrapper .plan-table th:nth-child(5),.plan-table-wrapper .plan-table td:nth-child(5){width:5%!important}.teaching-main-content.syllabus-main-content .header-row{display:flex!important;justify-content:space-between!important;align-items:center!important;gap:16px!important;flex-wrap:wrap!important;margin-top:0!important;margin-bottom:24px!important;padding-bottom:12px!important;border-bottom:1px solid var(--card-border, #e2eaf5)!important;position:static!important;transform:none!important;width:100%!important}.teaching-main-content.syllabus-main-content .plan-title{font-size:2rem!important;color:var(--text-color-primary, #132b4d)!important;font-weight:700!important;line-height:1.2!important;margin:0!important;padding:0!important;border-bottom:none!important;position:static!important;transform:none!important}.teaching-main-content.syllabus-main-content .plan-title:after{content:none!important}.teaching-main-content.syllabus-main-content .plan-actions-top-right,.teaching-main-content.syllabus-main-content .plan-actions-top-right .action-buttons{display:flex!important;align-items:center!important;gap:12px!important;margin:0!important;position:static!important;transform:none!important}.teaching-main-content.syllabus-main-content .plan-actions-top-right .btn,.teaching-main-content.syllabus-main-content .plan-actions-top-right .start-btn,.teaching-main-content.syllabus-main-content .plan-actions-top-right .copy-btn,.teaching-main-content.syllabus-main-content .plan-actions-top-right .action-buttons .btn{margin:0!important;height:38px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;white-space:nowrap!important;position:static!important;transform:none!important;box-sizing:border-box!important}.teaching-main-content.syllabus-main-content .Ciaan-details,.teaching-main-content.syllabus-main-content .tabs{margin-top:0!important;margin-bottom:20px!important}.teaching-main-content.syllabus-main-content .teaching{margin-bottom:20px!important}@media (max-width: 768px){.teaching-main-content.syllabus-main-content .header-row{flex-direction:column!important;align-items:flex-start!important;gap:16px!important}.teaching-main-content.syllabus-main-content .plan-actions-top-right,.teaching-main-content.syllabus-main-content .plan-actions-top-right .action-buttons{width:100%!important;display:flex!important;flex-direction:column!important;gap:12px!important;margin:0!important}.teaching-main-content.syllabus-main-content .plan-actions-top-right .btn,.teaching-main-content.syllabus-main-content .plan-actions-top-right .start-btn,.teaching-main-content.syllabus-main-content .plan-actions-top-right .copy-btn,.teaching-main-content.syllabus-main-content .plan-actions-top-right .action-buttons .btn{width:100%!important;height:40px!important;margin:0!important}.teaching-main-content.syllabus-main-content .plan-title{font-size:1.5rem!important;white-space:normal!important}}body{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;font-size:16px;font-weight:400;color:#111}.student-layout{display:flex;flex-direction:column;min-height:100vh}.student-main-row{display:flex;flex:1;flex-wrap:wrap;align-items:flex-start;gap:6px}.student-main-row{margin-left:0}.student-secondary-sidebar-wrapper{width:200px;flex-shrink:0;padding-right:0;box-sizing:border-box}.student-main-content{margin-top:0;padding-top:8px;padding-left:2px;padding-right:8px;flex:1 1 auto;width:auto;box-sizing:border-box}.studentlist-container{width:min(100%,1100px);max-width:1100px;margin:0 0 40px;box-shadow:0 10px 30px #0f172a0f;height:90vh!important;max-height:90vh!important;display:flex!important;flex-direction:column!important;overflow:hidden!important;position:relative;background:#fff;border-radius:16px;padding:24px;box-sizing:border-box}.header-with-button{display:flex;justify-content:flex-start;align-items:center;margin-bottom:1.5rem;flex-shrink:0!important}.table-responsive-wrapper{overflow-y:auto!important;overflow-x:hidden!important;flex:1 1 auto!important;border-radius:12px;border:1px solid #e2e8f0}.studentlist-container .table{border-collapse:collapse!important;width:100%!important;margin:0!important}.studentlist-container .table thead th{background-color:#f8fafc!important;color:#1e293b!important;font-weight:600!important;font-size:13px!important;padding:12px 16px!important;border-bottom:2px solid #e2e8f0!important;border-top:none!important;border-left:none!important;border-right:none!important;text-transform:uppercase;letter-spacing:.05em;text-align:left;position:sticky!important;top:0!important;z-index:10!important}.studentlist-container .table tbody tr{transition:background-color .2s ease;height:48px!important}.studentlist-container .table tbody tr:hover{background-color:#f8fafc!important}.studentlist-container .table tbody td{padding:12px 16px!important;font-size:14px!important;color:#334155!important;border-bottom:1px solid #e2e8f0!important;border-top:none!important;border-left:none!important;border-right:none!important;background-color:transparent!important;text-align:left;vertical-align:middle}.studentlist-container .table tbody tr:last-child td{border-bottom:none!important}.pagination-buttons{display:flex;justify-content:flex-end;gap:12px;margin-top:16px!important;flex-shrink:0!important}.pagination-buttons .btn{font-weight:600!important;font-size:14px!important;padding:10px 20px!important;border-radius:10px!important;border:1px solid #e2e8f0!important;background-color:#fff!important;color:#475569!important;cursor:pointer!important;transition:all .2s ease!important;box-shadow:0 1px 3px #0000000d!important;display:inline-flex!important;align-items:center!important;gap:6px!important;transform:none!important}.pagination-buttons .btn:hover{background-color:#f8fafc!important;color:#0f172a!important;border-color:#cbd5e1!important;transform:translateY(-1px)!important}@media (max-width: 768px){.student-main-row{flex-direction:column;margin-left:0;gap:0}.student-secondary-sidebar-wrapper{width:0;min-width:0;flex:0 0 0;padding-right:0;overflow:visible}.student-main-content{margin-left:0;width:100%;padding:8px}.studentlist-container{width:100%;max-width:100%;margin:0;padding:16px 12px;min-height:0;height:90vh!important;max-height:90vh!important;display:flex!important;flex-direction:column!important;overflow:hidden!important}.header-with-button{flex-direction:column;gap:1rem;align-items:stretch}.header-with-button h6{font-size:16px;line-height:1.3;margin:0}.studentlist-container .table thead{display:none}.studentlist-container .table,.studentlist-container .table tbody,.studentlist-container .table tr,.studentlist-container .table td{display:block;width:100%!important;min-width:auto!important}.studentlist-container .table tr{margin-bottom:1rem;border:1px solid #ddd;border-radius:10px;background:#fff;box-shadow:0 2px 6px #00000014;padding:0;overflow:hidden}.studentlist-container .table td{display:flex;flex-wrap:wrap;justify-content:flex-start;align-items:flex-start;padding:10px;border:none;border-bottom:1px solid #eee;font-size:14px;background:#fff;width:100%!important}.studentlist-container .table tr td:last-child{border-bottom:none}.studentlist-container .table td:before{content:attr(data-label) ": ";font-weight:600;color:#222;flex:1 1 40%;text-align:left;white-space:normal;padding-right:5px}.studentlist-container .table td span{flex:1 1 60%;font-weight:400;color:#000;text-align:left;width:auto!important;display:inline-block;word-wrap:break-word;overflow-wrap:anywhere}.pagination-buttons{justify-content:stretch;flex-direction:column;margin-top:12px!important;gap:8px;flex-shrink:0!important}.pagination-buttons button{width:100%}}.student-layout{position:relative;min-height:100%}.student-main-row{overflow:visible}.student-main-content{overflow-y:visible;overflow-x:visible;align-items:flex-start}.Ciaan-print-page{height:100vh;overflow-y:auto!important;background:#f4f6fb;padding:20px;box-sizing:border-box}.Ciaan-print-toolbar{max-width:1120px;margin:-20px auto 24px;padding:12px 24px;background:#ffffffe6!important;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(219,229,242,.8)!important;border-radius:12px;box-shadow:0 4px 20px #0d23480a!important;display:flex;justify-content:space-between;align-items:center;position:sticky;top:0;z-index:1000}.Ciaan-print-toolbar .btn{font-family:inherit;font-weight:600!important;font-size:14px!important;padding:10px 20px!important;border-radius:8px!important;cursor:pointer;transition:all .2s ease!important;display:inline-flex;align-items:center;gap:8px;box-shadow:none!important;margin:0!important;height:auto!important}.Ciaan-print-toolbar .btn-outline-secondary{background:#fff!important;border:1px solid #d1d5db!important;color:#374151!important}.Ciaan-print-toolbar .btn-outline-secondary:hover{background:#f9fafb!important;border-color:#9ca3af!important;color:#111827!important}.Ciaan-print-toolbar .btn-success{background:linear-gradient(135deg,#10b981,#059669)!important;border:none!important;color:#fff!important;box-shadow:0 4px 12px #10b98133!important}.Ciaan-print-toolbar .btn-success:hover{filter:brightness(.95);box-shadow:0 6px 16px #10b9814d!important}.Ciaan-print-sheet{color:#111827;max-width:100%;margin:0 auto;padding:0;display:flex;flex-direction:column;align-items:center;gap:30px;background:transparent}.print-block{background:#fff;width:210mm;min-height:297mm;padding:20mm;border:1px solid #dbe5f2;border-radius:8px;box-shadow:0 4px 15px #0000000d;box-sizing:border-box;position:relative;overflow:hidden;break-inside:avoid;page-break-inside:avoid}.front-page-block{min-height:297mm}@media screen and (max-width: 840px){.Ciaan-print-sheet{gap:15px;padding:10px}.print-block{width:100%!important;min-height:auto!important;padding:15px!important;border-radius:6px!important}}.section-title{font-size:28px;font-weight:700;margin:0 0 12px;color:#000}.front-page-block{page-break-after:always}.course-diary-card{border:1px solid #d1d5db;border-radius:8px;padding:20px}.front-page-block .course-diary-card{display:flex!important;flex-direction:column!important;min-height:230mm!important;justify-content:space-between!important;box-sizing:border-box!important;background:#fff!important}.front-page-block .course-diary-body-center{flex:1!important;display:flex!important;flex-direction:column!important;justify-content:center!important;align-items:center!important;margin:40px 0!important}.front-page-block .diary-info-table{margin-top:auto!important;width:100%!important}.course-diary-header-row{display:flex;align-items:center;gap:16px;margin-bottom:18px}.course-diary-logo-cell{width:84px;height:60px;flex-shrink:0}.course-diary-logo{width:100%;height:100%;object-fit:contain}.course-diary-logo-fallback{width:100%;height:100%;border-radius:8px;background-color:#e5e7eb;color:#111827;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:20px;text-transform:uppercase}.course-diary-title{flex:1;background:var(--app-header-bg);color:#fff;text-align:center;font-size:38px;font-weight:700;padding:8px 10px;border-radius:6px}.print-header-compact{display:flex!important;align-items:center!important;gap:12px!important;margin-bottom:16px!important;width:100%!important;border-bottom:2px solid var(--app-header-bg)!important;padding-bottom:8px!important}.print-header-compact .course-diary-logo-cell{width:56px!important;height:40px!important}.print-header-compact .course-diary-title{flex:1!important;background:var(--app-header-bg)!important;color:#fff!important;text-align:center!important;font-size:20px!important;font-weight:700!important;padding:4px 8px!important;border-radius:4px!important;line-height:1.2!important}.course-diary-body-center{text-align:center;margin-bottom:22px}.course-diary-body-center p{margin:4px 0;font-size:20px}.institution-name{font-size:34px;color:#444;margin:0 0 8px;text-transform:capitalize}.Ciaan-name{color:var(--app-header-bg);font-size:42px;margin:0 0 8px}.diary-info-table{width:100%;border-collapse:separate;border-spacing:0 8px;display:table;margin-top:75px}.diary-row{display:table-row}.diary-row .label,.diary-row .value{display:table-cell;padding:12px 15px;font-size:16px;border:1px solid #d1d5db}.diary-row .label{width:35%;background:var(--app-header-bg);color:#fff;font-weight:700}.diary-row .value{width:65%;background:#fff}.print-grid{width:100%;border-collapse:collapse;table-layout:fixed;border:2px solid #000}.print-grid th,.print-grid td{border:1px solid #000;padding:8px 6px;text-align:center;font-size:12px;vertical-align:middle;word-break:break-word}.print-grid thead th{border:2px solid #000;font-weight:700;background:#f3f4f6}.timetable-print-table .time-col{font-weight:700;width:180px;background:#f9fafb}.tt-cell{min-height:34px}.syllabus-image-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.syllabus-image-block{border:1px solid #d1d5db;border-radius:6px;padding:8px}.syllabus-page-label{font-weight:700;margin-bottom:8px}.syllabus-image{width:100%;height:auto;object-fit:contain}.two-col-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.two-col-grid h4,.subject-section h4{margin:0 0 8px;font-size:16px}.small-note{margin:0 0 10px;color:#374151;font-size:13px}.subject-section{margin-bottom:14px}.plan-page{margin-bottom:18px;page-break-inside:avoid}.plan-page-title{display:inline-block;border:1px solid #d1d5db;padding:6px 14px;border-radius:6px;font-weight:700;margin-bottom:8px}.tp-table th,.tp-table td{font-size:11px}.tp-table th:nth-child(1),.tp-table td:nth-child(1){width:12%!important}.tp-table th:nth-child(2),.tp-table td:nth-child(2){width:25%!important}.tp-table th:nth-child(3),.tp-table td:nth-child(3){width:30%!important}.tp-table th:nth-child(4),.tp-table td:nth-child(4){width:8%!important}.tp-table th:nth-child(5),.tp-table td:nth-child(5){width:12%!important}.tp-table th:nth-child(6),.tp-table td:nth-child(6){width:13%!important}.entry-no-cell{font-size:14px;font-weight:700}.Ciaan-print-loading{text-align:center;margin:12px 0 0;font-size:13px;color:#374151}.Ciaan-print-empty{min-height:100vh;display:flex;align-items:center;justify-content:center;flex-direction:column}@media (max-width: 768px){.two-col-grid,.syllabus-image-grid{grid-template-columns:1fr}.course-diary-title{font-size:24px}.course-diary-body-center p{font-size:16px}}@media print{@page{size:A4 portrait;margin:10mm}body{background:#fff!important}.no-print{display:none!important}.Ciaan-print-page{padding:0!important;background:#fff!important;height:auto!important;overflow:visible!important}.Ciaan-print-sheet{max-width:none!important;border:none!important;box-shadow:none!important;margin:0!important;padding:0!important;display:block!important}.print-grid,.course-diary-card,.plan-page{page-break-inside:avoid}.print-block{page-break-before:always!important;break-before:page!important;page-break-inside:avoid!important;break-inside:avoid!important;margin:0!important;padding:0!important;width:100%!important;height:auto!important;min-height:277mm!important;box-shadow:none!important;border:none!important;border-radius:0!important;box-sizing:border-box!important}.front-page-block{page-break-before:avoid!important;break-before:avoid!important}.section-title{font-size:20px}.course-diary-title{font-size:24px}.course-diary-body-center p{font-size:14px}.Ciaan-name{font-size:28px}.institution-name{font-size:22px}table,tr,th,td{border:1px solid #000000!important}th{background-color:#f1f3f5!important;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}img,.course-diary-logo,.branding-logo{display:block!important;visibility:visible!important;opacity:1!important;content-visibility:visible!important;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}}.k3-format-section{background:#fff;border:1px solid #000;padding:14px;margin-bottom:24px}.k3-sheet-header{display:flex;justify-content:space-between;align-items:flex-start;border-bottom:1px solid #000;padding-bottom:10px;margin-bottom:10px}.k3-meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:6px 18px;font-size:12px;margin-bottom:12px;text-align:left}.k3-table{width:100%;border-collapse:collapse;font-size:9px;table-layout:auto}.k3-table th,.k3-table td{border:1px solid #000!important;padding:3px 2px!important;text-align:center;vertical-align:middle;line-height:1.1;word-wrap:break-word}.k3-name{text-align:left!important;padding-left:6px!important}.k4-format-section{border:1px solid #000;background:#fff;padding:10px;margin-bottom:24px}.k4-print-sheet{background:#fff}.k4-print-table{width:100%;border-collapse:collapse;table-layout:fixed;margin-bottom:0;border:1px solid #000;font-size:9px}.k4-print-table th,.k4-print-table td{border:1px solid #000!important;font-size:9px;padding:3px 2px!important;text-align:center;vertical-align:middle;background:#fff;line-height:1.1;word-wrap:break-word}.k4-col-roll{width:10%}.k4-col-enroll{width:15%}.k4-col-name{width:40%}.k4-col-seat{width:15%}.k4-col-marks{width:20%}.k4-print-signatures{border:1px solid #000;border-top:none;display:grid;grid-template-columns:1fr 1fr;min-height:110px}.k4-sign-column{padding:8px;font-size:12px;text-align:left}.k5-format-section{border:1px solid #000;background:#fff;padding:10px;margin-bottom:24px}.k5-sheet{background:#fff}.k5-table{width:100%;border-collapse:collapse;font-size:9px}.k5-table th,.k5-table td{border:1px solid #000!important;font-size:9px;padding:3px 2px!important;text-align:center;vertical-align:middle;line-height:1.1;word-wrap:break-word}.k5-meta-right{text-align:right!important}.k5-name{text-align:left!important}.k5-signatures{border:1px solid #000;border-top:none;display:flex;justify-content:space-between;padding:10px 14px;font-size:13px;min-height:78px}.k5-signatures>div{text-align:left}.attendance-records-section{background:#fff;border:1px solid #000;padding:14px;margin-bottom:24px}.attendance-header-top{display:flex;justify-content:space-between;align-items:flex-start;border-bottom:1px solid #000;padding-bottom:10px;margin-bottom:10px}.attendance-title-box{text-align:center;flex:1}.attendance-board{font-weight:700;font-size:14px}.attendance-subtitle{font-size:12px;margin-top:4px;font-weight:700}.attendance-format-label{font-weight:700;font-size:12px;text-align:right}.attendance-meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:6px 18px;font-size:12px;margin-bottom:12px;text-align:left}.attendance-table-title{font-size:13px;font-weight:700;margin:16px 0 8px;text-align:left;border-bottom:1px solid #000;padding-bottom:4px}.attendance-log-table,.attendance-summary-table{width:100%;border-collapse:collapse;font-size:9px;margin-bottom:18px}.attendance-log-table th,.attendance-log-table td,.attendance-summary-table th,.attendance-summary-table td{border:1px solid #000!important;padding:3px 2px!important;text-align:center;vertical-align:middle;line-height:1.1;word-wrap:break-word}.attendance-log-table thead th,.attendance-summary-table thead th{background:#f1f3f5;font-weight:700}.attendance-log-table td.text-start,.attendance-summary-table td.text-start{text-align:left!important;padding-left:6px!important}.attendance-empty{text-align:center;padding:12px 0;color:#666}.attendance-signatures{display:flex;justify-content:space-between;margin-top:24px;font-size:12px}.attendance-signatures .sign-label{font-size:11px;color:#444}.page-break-before{page-break-before:always!important;break-before:page!important;margin-top:40px}@media print{.page-break-before{page-break-before:always!important;break-before:page!important}.k3-format-section,.k4-format-section,.k5-format-section,.attendance-records-section{border:1px solid #000!important;box-shadow:none!important;background:#fff!important;padding:10px!important;page-break-inside:avoid!important;break-inside:avoid!important}}.vision-mission-print-block{page-break-after:always}.vision-mission-print-container{padding:40px;font-family:Times New Roman,Times,serif;color:#000;min-height:900px}.branding-header{border-bottom:2px solid #000;padding-bottom:15px;margin-bottom:30px}.branding-logo-title{display:flex;align-items:center;gap:20px}.branding-logo{width:90px;height:auto;max-height:70px;object-fit:contain}.branding-logo-fallback{width:70px;height:70px;background:#e5e7eb;border-radius:6px;font-weight:700;display:flex;align-items:center;justify-content:center;font-size:24px}.branding-title-text h3{margin:0;font-size:26px;font-weight:700}.branding-title-text h4{margin:5px 0 0;font-size:16px;letter-spacing:2px;color:#374151}.vm-print-section-header{border-bottom:2px solid #e5e7eb!important;padding-bottom:10px!important;margin-top:30px!important;margin-bottom:20px!important}.vm-print-section-header h3{margin:0!important;font-size:24px!important;font-weight:700!important;color:#111827!important;text-transform:uppercase!important;letter-spacing:.02em!important}.vm-print-content p{font-size:18px;line-height:1.6;margin-bottom:20px;text-align:justify}.vm-print-sub-section{margin-bottom:25px}.vm-print-sub-section h4{margin:0 0 10px;font-size:19px;font-weight:700;text-decoration:underline}.vm-print-sub-section p{font-size:16px;line-height:1.5;margin:0}.vm-print-list{list-style:none;padding-left:0;margin:0}.vm-print-list li{font-size:16px;line-height:1.6;margin-bottom:10px;display:flex;gap:10px}.vm-print-outcomes-list{margin-top:15px}.po-card{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:24px!important;padding:18px 24px!important;border-radius:10px!important;border:1px solid #e5e7eb!important;background:#fff!important;margin-bottom:16px!important;box-shadow:0 1px 3px #00000005!important;box-sizing:border-box!important;page-break-inside:avoid!important}.po-title-col{width:28%!important;min-width:28%!important;flex-shrink:0!important;font-weight:700!important;font-size:15px!important;color:#1f2937!important;text-align:left!important;line-height:1.4!important}.po-desc-col{flex-grow:1!important;width:72%!important;font-weight:400!important;font-size:15px!important;line-height:1.7!important;color:#4b5563!important;text-align:left!important}@media (max-width: 1024px){.po-title-col{width:32%!important;min-width:32%!important}.po-desc-col{width:68%!important}}@media (max-width: 768px){.po-card{flex-direction:column!important;align-items:flex-start!important;gap:12px!important;padding:16px 20px!important}.po-title-col{width:100%!important;min-width:100%!important;font-size:16px!important}.po-desc-col{width:100%!important;font-size:15px!important;line-height:1.6!important}}@media print{.vision-mission-print-block{page-break-before:always!important;page-break-after:always!important;margin:0!important;padding:20px!important}}.attendance-sheet-landscape{background:#fff;padding:10px 6px;margin-top:30px;overflow-x:auto}.ledger-header-info{display:flex;justify-content:space-between;align-items:flex-end;font-size:12px;font-weight:600;margin-bottom:4px;padding:0 2px;color:#000}.ledger-left{text-align:left;font-size:12px}.ledger-center{text-align:center;font-size:14px;font-weight:700;flex:1}.ledger-right{text-align:right;font-size:11px;color:#555}.ledger-value{text-decoration:underline;font-weight:700;margin-left:4px}.ledger-table{width:100%;border-collapse:collapse;font-size:8px;table-layout:fixed;border:1.5px solid #000}.ledger-table th,.ledger-table td{border:1px solid #000;padding:1px 2px;text-align:center;vertical-align:middle;line-height:1.2;overflow:hidden;white-space:nowrap}.ledger-table thead th{background:#f8f8f8;font-weight:700;font-size:7.5px}.ledger-sr-col{width:28px!important;min-width:28px;max-width:28px;font-size:7px!important}.ledger-roll-col{width:40px!important;min-width:40px;max-width:40px;font-size:7px!important}.ledger-sig-col{width:60px!important;min-width:60px;max-width:60px;font-size:6.5px!important}.ledger-month-header{font-size:7.5px!important;font-weight:700!important;background:#eee!important;letter-spacing:.3px;padding:2px 1px!important}.ledger-month-header.empty-header{background:#fafafa!important;color:#bbb}.ledger-date-header{font-size:7px!important;font-weight:600!important;padding:1px!important}.ledger-index-header{font-size:6.5px!important;font-weight:500!important;color:#666;padding:1px!important}.ledger-sr-cell{font-size:7px;font-weight:600;background:#fafafa}.ledger-roll-cell{font-size:7px;font-weight:500;text-align:center}.ledger-mark-cell{font-size:7.5px;font-weight:600;min-width:14px}.ledger-sig-cell{min-width:50px}@media screen{.attendance-sheet-landscape{border:1px solid #d1d5db;border-radius:6px;box-shadow:0 2px 8px #0000000f;overflow-x:auto;max-width:100%}.ledger-table{min-width:900px}}@media print{.attendance-sheet-landscape{page-break-before:always!important;page-break-after:always!important;break-before:page!important;break-after:page!important;width:277mm;height:190mm;transform-origin:top left;transform:rotate(90deg) translateY(-190mm);margin:0!important;padding:4mm!important;border:none!important;box-shadow:none!important;border-radius:0!important;overflow:hidden!important;box-sizing:border-box}.ledger-table{min-width:unset!important;width:100%!important;font-size:7px!important}.ledger-table th,.ledger-table td{padding:1px!important}.ledger-header-info{margin-bottom:2mm}.ledger-center{font-size:11px}.ledger-sr-col{width:22px!important;min-width:22px!important}.ledger-roll-col{width:34px!important;min-width:34px!important}.ledger-sig-col{width:50px!important;min-width:50px!important}}.personal-timetable-print-container{width:100%;border:1px solid #000000;padding:8px;background:#fff;box-sizing:border-box;display:flex;justify-content:center;align-items:center;page-break-inside:avoid}.personal-timetable-print-image{max-width:100%;height:auto;max-height:240mm;object-fit:contain;display:block}@media print{.personal-timetable-print-image{max-width:100%!important;height:auto!important;max-height:240mm!important;display:block!important;visibility:visible!important;opacity:1!important;content-visibility:visible!important;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important;image-rendering:-webkit-optimize-contrast;image-rendering:crisp-edges}}.simple-navbar{display:flex;flex-wrap:wrap;gap:6px;border-bottom:1px solid #e2eaf5;padding:0 0 10px;margin-bottom:0;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:thin}.simple-navbar a{text-decoration:none;padding:11px 16px;color:#4d607c;font-size:.98rem;font-weight:600;font-family:inherit;transition:all .2s ease;border:1px solid transparent;background:#f4f8ff;position:relative;white-space:nowrap;min-width:max-content;border-radius:10px;display:flex;align-items:center;justify-content:center}.simple-navbar a:hover{color:#1e4a95;background-color:#edf4ff;border-color:#c8d8f1}.simple-navbar a.active{color:#11408a;font-weight:600;border-color:#1f63d357;background:linear-gradient(180deg,#eaf3ff,#ddeaff);box-shadow:0 3px 10px #12489a1f}.simple-navbar a:not(:last-child):after{content:"";position:absolute;right:-4px;top:24%;height:52%;width:1px;background-color:#e1eaf5;opacity:.8}.simple-navbar a.active:after{display:none}@media (max-width: 768px){.simple-navbar{gap:8px;overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:8px}.simple-navbar a{padding:9px 12px;font-size:.88rem;min-width:max-content}}.subject-details-container{--sd-surface: #ffffff;--sd-border: #dbe5f2;--sd-bg-1: #f7faff;--sd-bg-2: #eef3fb;--sd-text: #10223d;--sd-muted: #4e607b;display:flex;width:100%;min-height:calc(100vh - var(--header-height, 60px));margin-top:0;padding:16px;gap:8px;box-sizing:border-box;position:relative;overflow-y:auto;overflow-x:hidden;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif!important;background:linear-gradient(180deg,var(--sd-bg-1) 0%,var(--sd-bg-2) 100%)}.subject-details-container *{box-sizing:border-box;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif!important}.details-sidebar-column{width:220px;min-width:220px;max-width:220px;flex-shrink:0;height:fit-content;position:sticky;top:12px;z-index:1}.details-content-column{flex:1;min-width:0;display:flex;flex-direction:column;background:var(--sd-surface);border:1px solid var(--sd-border);border-radius:16px;box-shadow:0 12px 30px #0d234814;overflow:hidden;min-height:620px}.navbar-wrapper{background:var(--sd-surface);border-bottom:1px solid #e4ebf5;padding:12px 16px 0;position:sticky;top:0;z-index:10}.page-content{flex:1;padding:14px;overflow-y:auto;overflow-x:hidden;min-width:0;background:var(--sd-surface)}.subject-details-main-content{margin:0;padding:0;background:transparent;color:var(--sd-text)}.page-content table,.page-content .table-wrapper{max-width:100%;overflow-x:auto}.page-content *{max-width:100%;word-wrap:break-word}.page-content h1,.page-content h2,.page-content h3,.page-content h4,.page-content h5,.page-content h6{color:var(--sd-text)}.page-content p,.page-content span,.page-content label,.page-content td,.page-content th{font-family:inherit}@media (max-width: 1200px){.subject-details-container{padding:12px;gap:12px}.details-sidebar-column{width:210px;min-width:210px;max-width:210px}}@media (max-width: 1024px){.details-sidebar-column{width:200px;min-width:200px;max-width:200px}.navbar-wrapper{padding:10px 12px 0}.page-content{padding:12px}}@media (max-width: 768px){.subject-details-container{flex-direction:column;padding:8px;gap:8px;min-height:auto}.details-sidebar-column{width:100%;min-width:0;max-width:none;position:static}.details-content-column{min-height:520px;border-radius:12px}.navbar-wrapper{padding:8px 10px 0}.page-content{padding:10px}}@media (min-width: 769px){.subject-details-container{padding:16px 16px 16px 6px!important}}.student-layout.tlo-page-active,.student-layout.llo-page-active{background:#edf7f4!important}.student-layout.tlo-page-active .secondary-nav-item.active,.student-layout.llo-page-active .secondary-nav-item.active{background:#e6f7f0!important;border-left:4px solid #0eb582!important;border-color:transparent transparent transparent #0eb582!important;color:#0eb582!important}.student-layout.tlo-page-active .secondary-nav-item.active .secondary-nav-index,.student-layout.llo-page-active .secondary-nav-item.active .secondary-nav-index{background:#0eb582!important;color:#fff!important}.student-layout.tlo-page-active .secondary-nav-item.active .secondary-nav-icon,.student-layout.llo-page-active .secondary-nav-item.active .secondary-nav-icon,.student-layout.tlo-page-active .secondary-sidebar-title,.student-layout.llo-page-active .secondary-sidebar-title{color:#0eb582!important}.tlollo-card{background:#fff;border-radius:16px;box-shadow:0 10px 30px #10b98105,0 1px 3px #00000005;padding:32px;margin-bottom:24px;border:none}.tlollo-card-header{display:flex;justify-content:space-between;align-items:center;padding-bottom:20px;border-bottom:1.5px solid #e6f0eb;margin-bottom:24px}.tlollo-card-title{font-size:1.25rem;font-weight:700;color:#1e293b;margin:0}.tlollo-subject-badge{background:#f1f5f9;color:#475569;padding:6px 14px;border-radius:9999px;font-size:.85rem;font-weight:600}.tlollo-grid{display:grid;grid-template-columns:1fr 1.5fr;gap:48px}@media (max-width: 992px){.tlollo-grid{grid-template-columns:1fr;gap:24px}}.co-section-header{display:flex;justify-content:flex-start;align-items:center;gap:16px;margin-bottom:12px}.co-section-title{font-size:.95rem;font-weight:700;color:#1e293b;margin:0}.co-actions{display:flex;align-items:center;gap:12px}.btn-action-green{background:none;border:none;color:#0eb582;font-size:.85rem;font-weight:700;cursor:pointer;display:inline-flex;align-items:center;gap:4px;padding:0;transition:color .2s;text-decoration:none}.btn-action-green:hover{color:#0c9c6f}.btn-action-green.btn-delete{color:#0eb582}.btn-action-green.btn-delete:hover{color:#dc3545}.co-dropdown{width:100%;padding:12px 16px;border:1px solid #cbd5e1;border-radius:8px;font-size:.95rem;font-weight:600;color:#1e293b;background-color:#fff;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");background-position:right 12px center;background-repeat:no-repeat;background-size:1.25rem;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;transition:border-color .2s,box-shadow .2s}.co-dropdown:focus{outline:none;border-color:#0eb582;box-shadow:0 0 0 3px #0eb58226}.co-description-box{margin-top:20px;background:#f8faf9;border:1px solid #e2e8f0;border-radius:12px;padding:16px}.co-description-label{font-size:.72rem;font-weight:800;color:#64748b;letter-spacing:.05em;margin-bottom:8px;display:block;text-transform:uppercase}.co-description-textarea{width:100%;background:#fff;border:1px solid #cbd5e1;border-radius:8px;padding:12px;font-size:.9rem;color:#1e293b;resize:vertical;min-height:120px;transition:border-color .2s,box-shadow .2s}.co-description-textarea:focus{outline:none;border-color:#0eb582;box-shadow:0 0 0 3px #0eb5821a}.outcomes-section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.outcomes-section-title{font-size:.95rem;font-weight:700;color:#1e293b;margin:0;display:flex;align-items:center;gap:8px}.outcomes-section-title-icon{color:#64748b;font-size:1.1rem}.btn-add-outcome{background:none;border:none;color:#0eb582;font-size:.85rem;font-weight:700;cursor:pointer;display:inline-flex;align-items:center;gap:4px;padding:0;transition:color .2s;text-decoration:none}.btn-add-outcome:hover{color:#0c9c6f}.outcomes-list{display:flex;flex-direction:column;gap:12px;min-height:150px}.outcome-item{display:flex;align-items:center;gap:16px;background:#f8faf9;border-radius:8px;padding:10px 16px;border:1px solid transparent;transition:border-color .2s,background-color .2s}.outcome-item:focus-within{border-color:#c2e5d9;background:#f4fcf9}.outcome-badge{font-size:.72rem;font-weight:700;color:#64748b;background:#e2e8f0;padding:4px 8px;border-radius:4px;min-width:52px;text-align:center;letter-spacing:.02em;text-transform:uppercase}.outcome-input{flex:1;border:none;background:transparent;outline:none;font-size:.9rem;color:#1e293b;padding:4px 0;font-weight:500}.btn-delete-outcome{background:none;border:none;color:#0eb582;cursor:pointer;font-size:1.15rem;padding:4px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background-color .2s,color .2s}.btn-delete-outcome:hover{background-color:#fee2e2;color:#dc3545}.tlollo-save-footer{margin-top:32px;border-top:1.5px solid #e6f0eb;padding-top:24px;display:flex;justify-content:center}.btn-save-details{width:100%;background-color:#0eb582;color:#fff;border:none;border-radius:8px;padding:14px;font-size:.95rem;font-weight:700;letter-spacing:.02em;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;box-shadow:0 4px 12px #0eb58226;transition:background-color .2s,transform .1s,box-shadow .2s}.btn-save-details:hover{background-color:#0c9c6f;box-shadow:0 6px 16px #0eb58240}.btn-save-details:active{transform:scale(.995)}.btn-save-details:disabled{background-color:#94a3b8;box-shadow:none;cursor:not-allowed}.tlollo-summary-title{font-size:1.1rem;font-weight:700;color:#1e293b;margin-bottom:16px}.tlollo-summary-card{background:#fff;border-radius:16px;box-shadow:0 10px 30px #10b98105,0 1px 3px #00000005;padding:24px;border:none}.tlollo-summary-card .table{border-color:#e6f0eb}.tlollo-summary-card .table thead th{background:#f4f8f6!important;color:#1b4332!important;font-weight:700!important;border-color:#e6f0eb!important}.tlollo-summary-card .table tbody td{border-color:#e6f0eb!important}.attendance-panel-page{min-height:calc(100vh - 60px);padding:1.25rem;background:radial-gradient(circle at 8% 8%,color-mix(in srgb,var(--primary-color, #1f63d3) 14%,transparent) 0%,transparent 38%),radial-gradient(circle at 92% 2%,color-mix(in srgb,var(--primary-accent-dark, #1145a5) 12%,transparent) 0%,transparent 35%),linear-gradient(180deg,color-mix(in srgb,var(--primary-light, #f3f8ff) 72%,#ffffff 28%),color-mix(in srgb,var(--dash-bg, #ecf4ff) 82%,#ffffff 18%))}.attendance-panel-hero,.attendance-panel-grid{max-width:1180px;margin-left:auto;margin-right:auto}.attendance-panel-hero{border:1px solid var(--card-border, #d8e5f6);border-radius:18px;background:linear-gradient(145deg,color-mix(in srgb,var(--card-bg, #ffffff) 92%,#ffffff 8%),color-mix(in srgb,var(--primary-light, #edf5ff) 34%,#ffffff 66%));box-shadow:0 12px 26px #122b5214;padding:1.25rem 1.3rem;margin-bottom:1rem}.attendance-panel-hero h2{margin:0;color:var(--text-color-primary, #132844);font-size:2.05rem;font-weight:800}.attendance-panel-hero p{margin:.45rem 0 0;color:var(--text-color-secondary, #60728c);font-size:1rem;font-weight:500}.attendance-panel-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:.95rem}.attendance-panel-card{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;border:1px solid var(--card-border, #d8e5f6);border-radius:14px;background:color-mix(in srgb,var(--card-bg, #ffffff) 95%,#ffffff 5%);box-shadow:0 10px 22px #122b5212;min-height:128px;padding:1rem;display:flex;flex-direction:column;justify-content:space-between;text-align:left;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.attendance-panel-card:hover{transform:translateY(-3px);border-color:color-mix(in srgb,var(--primary-color, #1f63d3) 35%,var(--card-border, #c8daf6) 65%);box-shadow:0 14px 26px #122b5229}.attendance-panel-card-top{display:flex;gap:.7rem;align-items:center}.attendance-panel-icon{width:40px;height:40px;border-radius:10px;background:color-mix(in srgb,var(--primary-light, #edf4ff) 78%,#ffffff 22%);border:1px solid color-mix(in srgb,var(--primary-color, #1f63d3) 20%,var(--card-border, #cadcff) 80%);color:var(--primary-color, #0f5cc0);display:inline-flex;align-items:center;justify-content:center;font-size:1.05rem}.attendance-panel-title{margin:0;color:var(--text-color-primary, #16335a);font-size:.98rem;font-weight:800;line-height:1.3}.attendance-panel-footer{margin-top:.8rem;border-radius:10px;border:1px solid color-mix(in srgb,var(--primary-color, #1f63d3) 22%,var(--card-border, #cadcff) 78%);background:color-mix(in srgb,var(--primary-light, #edf4ff) 78%,#ffffff 22%);color:var(--primary-color, #174d9d);display:inline-flex;align-items:center;justify-content:center;gap:.42rem;min-height:36px;font-size:.86rem;font-weight:700}@media (max-width: 700px){.attendance-panel-page{padding:.9rem}.attendance-panel-hero h2{font-size:1.55rem}.attendance-panel-hero p{font-size:.93rem}.attendance-panel-grid{grid-template-columns:1fr}}.ats-page{--ats-bg-a: var(--primary-light, #eaf3ff);--ats-bg-b: var(--dash-bg, #dfeeff);--ats-card: var(--card-bg, #ffffff);--ats-border: var(--card-border, #c8dcf7);--ats-text: var(--text-primary, #132844);--ats-muted: var(--text-secondary, #4f6483);--ats-primary: var(--primary-color, #1f5fbf);--ats-primary-deep: var(--primary-accent-dark, #134996);min-height:calc(100vh - 64px);padding:1.25rem;background:radial-gradient(circle at 8% 8%,color-mix(in srgb,var(--primary-color, #1f5fbf) 20%,transparent),transparent 40%),radial-gradient(circle at 92% 2%,color-mix(in srgb,var(--primary-accent-dark, #134996) 13%,transparent),transparent 36%),linear-gradient(180deg,var(--ats-bg-a),var(--ats-bg-b))}.ats-hero,.ats-grid,.ats-state,.ats-container{max-width:1180px;margin-left:auto;margin-right:auto;width:100%;box-sizing:border-box}.ats-hero{border:1px solid var(--ats-border);border-radius:18px;background:linear-gradient(145deg,#fff,#e9f2ff);box-shadow:0 14px 30px #122b521c;padding:1.25rem 1.3rem;margin-bottom:1.5rem}.ats-hero h2{margin:0;color:var(--ats-text);font-size:2.05rem;font-weight:800}.ats-hero p{margin:.45rem 0 0;color:var(--ats-muted);font-size:1rem;font-weight:500}.ats-search-wrapper{max-width:600px;margin:0 auto 2.5rem;width:100%;padding:0 1rem;box-sizing:border-box}.ats-search-box{position:relative;display:flex;align-items:center;background:var(--ats-card);border:1px solid var(--ats-border);border-radius:999px;padding:0 1.25rem;box-shadow:0 8px 24px #122b520a;transition:all .25s ease}.ats-search-box:focus-within{border-color:var(--ats-primary);box-shadow:0 8px 30px #1f5fbf24}.ats-search-icon{color:var(--ats-muted);font-size:1.15rem;margin-right:.75rem}.ats-search-input{border:none;background:transparent;width:100%;padding:.8rem 0;font-size:.95rem;font-weight:600;color:var(--ats-text);outline:none}.ats-search-input::placeholder{color:var(--ats-muted);font-weight:500;opacity:.7}.ats-search-clear{border:none;background:transparent;color:var(--ats-muted);padding:0;cursor:pointer;display:flex;align-items:center;transition:color .2s ease}.ats-search-clear:hover{color:var(--ats-primary)}.ats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;width:100%}.ats-card{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;font:inherit;color:inherit;outline:none;text-decoration:none;border:1px solid var(--ats-border);border-radius:16px;background:linear-gradient(150deg,var(--ats-card),var(--ats-bg-b));box-shadow:0 10px 25px #122b520f;padding:1.5rem;text-align:left;display:flex;flex-direction:column;justify-content:space-between;align-items:stretch;gap:1.25rem;margin:0;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;cursor:pointer;-webkit-user-select:none;user-select:none;box-sizing:border-box}.ats-card:hover{transform:translateY(-4px);border-color:color-mix(in srgb,var(--ats-primary) 35%,var(--ats-border) 65%);box-shadow:0 14px 28px #122b5221}.ats-card:focus-visible{border-color:var(--ats-primary);box-shadow:0 0 0 3px #1f5fbf2e}.ats-card-top{display:flex;gap:1rem;align-items:flex-start;width:100%}.ats-card-icon{width:44px;height:44px;border-radius:12px;background:linear-gradient(145deg,#edf4ff,#dfeeff);border:1px solid #b5cff4;color:var(--ats-primary);display:inline-flex;align-items:center;justify-content:center;font-size:1.2rem;flex-shrink:0}.ats-card-headtext{min-width:0;flex:1}.ats-card h3{margin:0;color:var(--ats-text);font-size:1.15rem;font-weight:800;line-height:1.3}.ats-code{margin:.25rem 0 0;color:var(--ats-muted);font-size:.9rem;font-weight:700}.ats-details{border-radius:12px;background:linear-gradient(145deg,#f5f9ff,#ecf4ff);border:1px solid #d0e1f8;padding:.85rem 1rem;display:flex;flex-direction:column;gap:.6rem;flex-grow:1;box-sizing:border-box}.ats-row{display:flex;flex-direction:row;justify-content:space-between;align-items:flex-start;gap:.5rem;border-bottom:1px dashed rgba(31,95,191,.08);padding-bottom:.5rem;width:100%}.ats-row:last-child{border-bottom:none;padding-bottom:0}.ats-label{font-size:.72rem;color:var(--ats-muted);font-weight:700;text-transform:uppercase;letter-spacing:.04em;flex-shrink:0;margin-top:.1rem}.ats-value{font-size:.88rem;color:var(--ats-text);font-weight:800;text-align:right;word-break:normal;overflow-wrap:break-word;max-width:60%}.ats-card-footer{width:100%;height:42px;border-radius:999px;border:1px solid var(--ats-primary);background:linear-gradient(135deg,var(--ats-primary),var(--ats-primary-deep));color:#fff;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;font-size:.95rem;font-weight:800;box-shadow:0 6px 12px #1f5fbf26;transition:all .2s ease;box-sizing:border-box}.ats-card:hover .ats-card-footer{background:linear-gradient(135deg,var(--ats-primary-deep),var(--ats-primary));box-shadow:0 8px 16px #1f5fbf40;transform:translateY(-1px)}.ats-state{border:1px solid var(--ats-border);border-radius:14px;background:#fff;padding:1.5rem;color:var(--ats-muted);text-align:center;font-weight:600}.ats-card.archived-card{background:linear-gradient(150deg,#f8fafc,#f1f5f9);border-color:#cbd5e1b3;box-shadow:0 10px 20px #00000005;opacity:.85}.ats-card.archived-card:hover{border-color:#cbd5e1;box-shadow:0 14px 28px #64748b1f;opacity:1}.ats-card.archived-card .ats-card-icon{background:linear-gradient(145deg,#f1f5f9,#e2e8f0);border-color:#cbd5e1;color:#64748b}.ats-card.archived-card .ats-card-footer{border-color:#64748b;background:linear-gradient(135deg,#64748b,#475569);box-shadow:none}.ats-card.archived-card:hover .ats-card-footer{background:linear-gradient(135deg,#475569,#334155)}@media (max-width: 1100px){.ats-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.ats-grid{grid-template-columns:1fr;gap:1rem}.ats-card{padding:1.25rem}}:root{--sah-primary: var(--primary-color, #0f5cc0);--sah-primary-deep: var(--primary-accent-dark, #084892);--sah-surface: var(--primary-light, #f3f8ff);--sah-surface-soft: var(--dash-bg, #ecf4ff);--sah-border: var(--card-border, #d8e5f6);--sah-text: var(--text-primary, #122844);--sah-muted: var(--text-secondary, #60728c)}.sah-page{padding:1.25rem;min-height:calc(100vh - 64px);background:radial-gradient(circle at 8% 8%,color-mix(in srgb,var(--primary-color, #0f5cc0) 13%,transparent),transparent 38%),radial-gradient(circle at 92% 2%,color-mix(in srgb,var(--primary-accent-dark, #084892) 10%,transparent),transparent 35%),linear-gradient(180deg,var(--sah-surface),var(--sah-surface-soft));font-family:Inter,Segoe UI,sans-serif}.sah-header{margin:0 auto 1rem;max-width:1180px;border:1px solid var(--sah-border);border-radius:18px;background:linear-gradient(145deg,#fff,#edf5ff);box-shadow:0 12px 26px #122b5214;padding:1rem 1.1rem}.sah-header h1{font-size:1.5rem;font-weight:800;color:var(--sah-text);margin:0 0 .35rem}.sah-header p{color:var(--sah-muted);font-size:.92rem;margin:0}.sah-grid{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:.85rem}.sah-card{background:#fff;border-radius:14px;border:1.5px solid var(--sah-border);padding:.9rem;cursor:pointer;transition:all .2s ease;box-shadow:0 8px 18px #0000000f;position:relative;overflow:hidden;text-align:left}.sah-card:before{content:"";position:absolute;top:0;left:0;width:5px;height:100%;background:linear-gradient(180deg,var(--sah-primary),var(--sah-primary-deep))}.sah-card:hover{transform:translateY(-3px);box-shadow:0 12px 22px #0f5cc02e;border-color:#b8d2f7}.sah-card-id{font-size:.72rem;font-weight:700;color:var(--sah-primary);letter-spacing:.06em;text-transform:uppercase;margin-bottom:.4rem}.sah-card-subject{font-size:1rem;font-weight:700;color:var(--sah-text);margin:0 0 .2rem}.sah-card-code{font-size:.82rem;color:var(--sah-muted);margin-bottom:.45rem}.sah-card-meta{display:flex;flex-wrap:wrap;gap:.35rem}.sah-tag{background:#eef4ff;color:#245287;border:1px solid #c8dcff;border-radius:20px;padding:.13rem .45rem;font-size:.75rem;font-weight:600}.sah-empty,.sah-loading{text-align:center;padding:2rem 1rem;color:var(--sah-muted);grid-column:1 / -1;border:1px solid var(--sah-border);border-radius:14px;background:#fff}.sah-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#081a3170;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;display:flex;align-items:center;justify-content:center;padding:20px}.sah-modal{background:#fff;border-radius:18px;border:1px solid #dce8fa;padding:1rem;width:100%;max-width:540px;box-shadow:0 25px 50px #06172d38;animation:sah-slide-in .22s ease;max-height:90vh;overflow-y:auto}@keyframes sah-slide-in{0%{transform:translateY(-14px);opacity:0}to{transform:translateY(0);opacity:1}}.sah-modal-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.35rem}.sah-modal-header h2{font-size:1.1rem;font-weight:800;color:var(--sah-text);margin:0}.sah-modal-close{background:none;border:none;font-size:1.45rem;cursor:pointer;color:#7f8fa5;line-height:1;padding:0}.sah-modal-close:hover{color:#334155}.sah-modal-Ciaan-info{background:#eef4ff;border:1px solid #c8dcff;border-radius:10px;padding:.55rem .65rem;margin-bottom:.8rem}.sah-modal-Ciaan-info p{margin:0;font-size:.88rem;color:#1f4f87;font-weight:600}.sah-modal-Ciaan-info span{font-size:.79rem;color:var(--sah-muted)}.sah-type-select{display:grid;grid-template-columns:1fr 1fr;gap:.7rem;margin-bottom:.55rem}.sah-type-btn{border:1px solid #d6e4f8;border-radius:12px;padding:.85rem .6rem;cursor:pointer;background:#fff;transition:all .2s ease;text-align:center}.sah-type-btn:hover{border-color:#b7d2f8;background:#f2f7ff;transform:translateY(-1px)}.sah-type-btn .sah-type-icon{font-size:1.6rem;display:block;margin-bottom:.3rem}.sah-type-btn .sah-type-label{font-size:.95rem;font-weight:700;display:block;color:var(--sah-text)}.sah-type-btn .sah-type-desc{font-size:.75rem;color:var(--sah-muted);display:block;margin-top:.2rem}.sah-checking{text-align:center;padding:.7rem;color:var(--sah-muted);font-size:.9rem}.sah-error-banner{background:#fef2f2;border:1px solid #fecaca;border-radius:10px;padding:.6rem .7rem;color:#991b1b;font-size:.85rem;margin-bottom:.65rem}.sah-quick-form-title{font-size:1rem;font-weight:800;color:#304a70;margin-bottom:.55rem}.sah-form-group{margin-bottom:.58rem}.sah-form-group label{display:block;font-size:.8rem;font-weight:700;color:#4d6688;margin-bottom:.2rem}.sah-form-group input,.sah-form-group select,.sah-form-group textarea{width:100%;border:1px solid #c8d8ef;border-radius:10px;padding:.48rem .65rem;font-size:.9rem;color:#173058;background:#fff;box-sizing:border-box}.sah-form-group input:focus,.sah-form-group select:focus,.sah-form-group textarea:focus{outline:none;border-color:var(--sah-primary);box-shadow:0 0 0 3px #0f5cc01f}.sah-form-row{display:grid;grid-template-columns:1fr 1fr;gap:.55rem}.sah-form-actions{display:flex;gap:.55rem;margin-top:.75rem}.sah-btn{flex:1;padding:.55rem .7rem;border-radius:10px;border:none;font-size:.88rem;font-weight:700;cursor:pointer}.sah-btn-primary{background:linear-gradient(135deg,var(--sah-primary),var(--sah-primary-deep));color:#fff}.sah-btn-primary:hover{filter:brightness(1.06)}.sah-btn-primary:disabled{opacity:.6;cursor:not-allowed}.sah-btn-secondary{background:#f3f7ff;color:#365682;border:1px solid #d4e2f7}.sah-btn-secondary:hover{background:#eaf2ff}.sah-back-link{font-size:.8rem;color:var(--sah-primary);cursor:pointer;background:none;border:none;padding:0;margin-top:.5rem;text-decoration:underline}@media (max-width: 700px){.sah-page{padding:.9rem}.sah-type-select,.sah-form-row,.sah-grid{grid-template-columns:1fr}}.practical-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#14182699;display:flex;align-items:center;justify-content:center;z-index:2000;padding:24px}.practical-modal{width:min(560px,100%);background:#fff;border-radius:18px;padding:28px;box-shadow:0 18px 50px #14182633;border:1px solid #e3e7ef;display:flex;flex-direction:column;gap:20px;font-family:Space Grotesk,Trebuchet MS,sans-serif}.practical-modal header h2{margin:0;font-size:22px;color:#1c1f2a}.practical-modal header p{margin:6px 0 0;color:#596176;font-size:14px}.practical-modal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;background:#f6f8fc;padding:14px;border-radius:14px;border:1px solid #e3e7ef}.practical-modal-grid span{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#7a8495}.practical-modal-grid strong{display:block;margin-top:4px;font-size:14px;color:#1c1f2a}.practical-modal-field{display:flex;flex-direction:column;gap:8px}.practical-modal-field label{font-size:14px;font-weight:600;color:#1c1f2a}.practical-modal-field input{width:100%;padding:12px 14px;border:1px solid #d5d9e2;border-radius:10px;font-size:14px;background:#fff}.practical-modal-field input:focus{outline:none;border-color:var(--primary-color, #1f6feb);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary-color, #1f6feb) 12%,transparent)}.practical-modal-error{background:#feecec;color:#b42318;padding:10px 12px;border-radius:10px;border:1px solid #f7c6c6;font-size:13px}.practical-modal-actions{display:flex;justify-content:flex-end;gap:10px}.practical-modal-actions button{padding:10px 18px;border-radius:999px;border:none;background:var(--primary-color, #1f6feb);color:#fff;font-weight:600;cursor:pointer}.practical-modal-actions button.ghost{background:transparent;color:var(--primary-color, #1f6feb);border:1px solid var(--card-border, #c9d4ea)}.practical-modal-actions button:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 640px){.practical-modal-grid{grid-template-columns:1fr}.practical-modal-actions{flex-direction:column}.practical-modal-actions button{width:100%}}:root{--practical-ink: var(--text-primary, #1c1f2a);--practical-muted: var(--text-secondary, #596176);--practical-surface: var(--dash-bg, #f5f7fb);--practical-card: var(--card-bg, #ffffff);--practical-accent: var(--primary-color, #1f6feb);--practical-accent-strong: var(--primary-accent-dark, #154db3);--practical-warning: var(--yellow-accent, #f59f00);--practical-border: var(--card-border, #e3e7ef);--practical-shadow: 0 16px 40px rgba(20, 24, 38, .1)}body{background:var(--practical-surface)}.practical-page{min-height:calc(100vh - 60px);padding:32px 24px 48px;display:flex;justify-content:center;align-items:flex-start;background:radial-gradient(circle at top left,color-mix(in srgb,var(--primary-color, #1f6feb) 10%,transparent),transparent 55%),radial-gradient(circle at top right,color-mix(in srgb,var(--yellow-accent, #f59f00) 18%,transparent),transparent 50%),var(--practical-surface);font-family:Space Grotesk,Trebuchet MS,sans-serif}.practical-card{width:min(1200px,100%);background:var(--practical-card);border-radius:20px;box-shadow:var(--practical-shadow);padding:32px;border:1px solid var(--practical-border);display:flex;flex-direction:column;gap:28px;animation:slideUp .4s ease-out}.practical-header{display:grid;gap:24px;grid-template-columns:minmax(0,1fr) auto;align-items:center;padding-bottom:24px;border-bottom:1px solid var(--practical-border)}.practical-header-main{display:flex;flex-direction:column;gap:8px}.practical-eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:12px;color:var(--practical-muted);margin:0}.practical-title{font-size:32px;margin:0;color:var(--practical-ink)}.practical-subtitle{margin:0;font-size:16px;color:var(--practical-muted)}.practical-header-meta{display:grid;gap:14px;grid-template-columns:repeat(3,minmax(0,1fr));background:#f0f3fa;padding:16px;border-radius:16px;border:1px solid var(--practical-border);min-width:320px}.practical-header-meta span{display:block;font-size:11px;color:var(--practical-muted);text-transform:uppercase;letter-spacing:.08em}.practical-header-meta strong{display:block;font-size:15px;margin-top:4px;color:var(--practical-ink)}.practical-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.practical-filter-panel{padding:16px;background:#f7f9fd;border:1px solid var(--practical-border);border-radius:14px;display:flex;flex-direction:column;gap:8px}.practical-filter-select{width:100%;min-height:42px;border-radius:10px;border:1px solid #c9d2e4;padding:0 12px;font-size:14px;color:var(--practical-ink);background:#fff;outline:none}.practical-filter-select:focus{border-color:var(--practical-accent);box-shadow:0 0 0 3px #1f6feb1f}.metric-card{padding:18px;border-radius:16px;background:#f7f9fd;border:1px solid var(--practical-border);display:flex;flex-direction:column;gap:8px}.metric-card span{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--practical-muted)}.metric-card strong{font-size:24px;color:var(--practical-ink)}.metric-card.success{border-color:#1f6feb4d;background:#1f6feb1a}.metric-card.warning{border-color:#f59f0080;background:#f59f0029}.practical-table-head h3{margin:0;font-size:20px;color:var(--practical-ink)}.practical-badge{padding:8px 14px;border-radius:999px;background:#1c1f2a;color:#fff;font-size:13px;letter-spacing:.04em}.practical-table-container{border-radius:18px;border:1px solid var(--practical-border);background:#fff;max-height:55vh;min-height:280px;overflow:auto;box-shadow:inset 0 0 0 1px #fff9}.practical-table thead th{position:sticky;top:0;background:#eef2f9;text-align:left;padding:14px 16px;font-size:13px;letter-spacing:.04em;text-transform:uppercase;color:var(--practical-muted);z-index:2}.practical-table tbody td{padding:16px;border-top:1px solid var(--practical-border);font-size:15px;color:var(--practical-ink)}.practical-table tbody tr:hover{background:#1f6feb0f}.status-pill.completed{background:#1f6feb26;color:var(--practical-accent)}.status-pill.pending{background:#f59f0033;color:#b76a00}.action-pill,.checkbox-pill{display:inline-flex;align-items:center;justify-content:center;padding:6px 14px;border-radius:999px;border:1px solid var(--practical-accent);color:var(--practical-accent);background:#fff;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s ease;gap:8px}.action-pill:hover,.checkbox-pill:hover{background:#1f6feb1a}.action-pill.is-locked,.checkbox-pill.is-locked{border-color:#9aa4b2;color:#667084;background:#f2f4f7;cursor:not-allowed}.attendance-toggle{padding:8px 16px;border-radius:999px;border:1px solid transparent;font-size:12px;font-weight:700;letter-spacing:.08em;cursor:pointer;transition:all .2s ease;min-width:106px;white-space:nowrap;text-transform:uppercase}.attendance-toggle.present{background-color:#1f6feb24;color:#154db3;border-color:#1f6feb66}.attendance-toggle.present:hover{background-color:#1f6feb33}.attendance-toggle.absent{background-color:#fee2e2;color:#b42318;border-color:#fda29b}.attendance-toggle.absent:hover{background-color:#fecaca}.practical-pagination{display:flex;align-items:center;justify-content:center;gap:16px;background:#eef2f9;border-radius:12px;padding:12px 16px}.practical-pagination button{padding:8px 16px;border-radius:999px;border:1px solid var(--practical-border);background:#fff;color:var(--practical-ink);cursor:pointer;font-weight:600;transition:all .2s ease}.practical-pagination button:hover:not(:disabled){border-color:var(--practical-accent);color:var(--practical-accent)}.practical-pagination button:disabled{opacity:.5;cursor:not-allowed}.practical-empty h4{margin:0 0 8px;color:var(--practical-ink);font-size:18px}.practical-error{color:#b42318;font-size:14px;text-align:center}@media (max-width: 1024px){.practical-header{grid-template-columns:1fr}.practical-header-meta{min-width:unset;grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width: 768px){.practical-page{padding:20px 16px 40px}.practical-header-meta{grid-template-columns:repeat(2,minmax(0,1fr))}.practical-metrics{grid-template-columns:1fr}.practical-table-container{max-height:60vh}.practical-pagination{flex-direction:column}}@media (max-width: 540px){.practical-title{font-size:26px}.practical-header-meta{grid-template-columns:1fr}}:root{--practical-primary: var(--primary-color, #1f5fbf);--practical-dark: var(--primary-accent-dark, #134996);--practical-light: var(--primary-light, #eaf2ff);--practical-border: var(--card-border, #d7e5f8);--practical-text: var(--text-primary, #143257);--practical-muted: var(--text-secondary, #5d7090);--practical-success: #1d8f5f;--practical-danger: #dc3545;--practical-bg: var(--dash-bg, #f2f7ff)}.practical-page{min-height:calc(100vh - 60px);padding:32px 24px 48px;display:flex;justify-content:center;align-items:flex-start;background:radial-gradient(circle at top left,color-mix(in srgb,var(--primary-color, #1f5fbf) 12%,transparent),transparent 50%),radial-gradient(circle at bottom right,color-mix(in srgb,var(--primary-color, #1f5fbf) 8%,transparent),transparent 55%),linear-gradient(180deg,#f2f7ff,#fff);font-family:Nunito Sans,system-ui,-apple-system,sans-serif}.practical-card{width:min(1200px,100%);background:#fff;border-radius:18px;border:1px solid var(--practical-border);box-shadow:0 12px 26px #122b5214;padding:2rem;display:flex;flex-direction:column;gap:28px;animation:slideUp .4s ease-out}.practical-header{border:1px solid var(--practical-border);border-radius:18px;background:linear-gradient(145deg,#fff,#edf5ff);box-shadow:0 12px 26px #122b5214;padding:1.15rem 1.25rem;display:flex;align-items:center;justify-content:space-between;gap:14px}.practical-header-main{display:flex;flex-direction:column;gap:8px;flex:1}.practical-eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:12px;color:var(--practical-primary);margin:0;font-weight:700}.practical-title{font-size:28px;margin:0;color:var(--practical-text);font-weight:800;letter-spacing:-.2px}.practical-subtitle{margin:0;font-size:15px;color:var(--practical-muted);font-weight:500}.practical-bulk-actions{display:flex;gap:.6rem;flex-wrap:wrap}.practical-action-btn{border:1px solid var(--practical-border);background:#fff;color:var(--practical-primary);border-radius:999px;min-height:38px;padding:0 16px;font-size:.85rem;font-weight:800;cursor:pointer;transition:all .2s ease}.practical-action-btn:hover{border-color:var(--practical-primary);background:var(--practical-light);color:var(--practical-primary)}.practical-action-btn.ghost{color:var(--practical-muted)}.practical-header-meta{display:grid;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr));background:var(--practical-light);padding:14px;border-radius:14px;border:1px solid var(--practical-border);min-width:320px}.practical-header-meta span{display:block;font-size:11px;color:var(--practical-muted);text-transform:uppercase;letter-spacing:.08em;font-weight:600}.practical-header-meta strong{display:block;font-size:15px;margin-top:4px;color:var(--practical-text);font-weight:800}.practical-filter-panel{padding:16px;background:var(--practical-light);border:1px solid var(--practical-border);border-radius:14px;display:flex;flex-direction:column;gap:8px}.practical-toolbar{border:1px solid var(--practical-border);border-radius:14px;background:#fff;padding:.85rem;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.7rem}.practical-search{flex:1 1 260px;min-height:40px;border:1px solid var(--practical-border);border-radius:10px;padding:0 .85rem;color:var(--practical-text);background:#f8fbff;font-size:.9rem}.practical-search:focus{outline:none;border-color:var(--practical-primary);box-shadow:0 0 0 3px #1f5fbf1f}.practical-filter-chips{display:flex;flex-wrap:wrap;gap:.45rem}.practical-filter-chip{border:1px solid #c8d8ef;background:#fff;color:var(--practical-primary);border-radius:999px;min-height:34px;padding:0 .75rem;font-size:.78rem;font-weight:800;cursor:pointer}.practical-filter-chip.active{background:#edf4ff;border-color:#9dc0f0}.practical-filter-label{display:block;font-size:13px;letter-spacing:.04em;text-transform:uppercase;color:var(--practical-muted);font-weight:700}.practical-filter-select{width:100%;min-height:42px;border-radius:10px;border:1px solid var(--practical-border);padding:0 12px;font-size:14px;color:var(--practical-text);background:#fff;outline:none;font-family:Nunito Sans,system-ui,-apple-system,sans-serif}.practical-filter-select:focus{border-color:var(--practical-primary);box-shadow:0 0 0 3px #1f5fbf1f}.practical-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}.metric-card{padding:18px 20px;border-radius:14px;background:var(--practical-light);border:1px solid var(--practical-border);display:flex;flex-direction:column;gap:6px}.metric-card span{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--practical-muted);font-weight:600}.metric-card strong{font-size:26px;color:var(--practical-text);font-weight:800}.metric-card.success{background:#ecfdf5;border-color:#a7f3d0}.metric-card.success strong{color:#0f5132}.metric-card.warning{background:#fff1f2;border-color:#fecdd3}.metric-card.warning strong{color:#842029}.practical-table-section{display:flex;flex-direction:column;gap:16px}.practical-table-head{display:flex;align-items:center;justify-content:space-between;gap:16px}.practical-table-head h3{margin:0;font-size:18px;color:var(--practical-text);font-weight:800}.practical-table-head p{margin:6px 0 0;font-size:14px;color:var(--practical-muted)}.practical-badge{padding:8px 14px;border-radius:8px;background:var(--practical-light);color:var(--practical-primary);font-size:13px;letter-spacing:.04em;font-weight:700}.practical-table-container,.practical-students-panel{border-radius:14px;border:1px solid var(--practical-border);background:#fff;min-height:280px;padding:.9rem}.practical-students-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.75rem}@media (max-width: 1200px){.practical-students-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width: 900px){.practical-students-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 600px){.practical-students-grid{grid-template-columns:1fr}}.practical-student-card{border:1px solid var(--practical-border);background:#fff;border-radius:12px;padding:.8rem;cursor:pointer;transition:all .2s ease}.practical-student-card.present{border-color:#a7f3d0;background:#f3fbf7}.practical-student-card.absent{border-color:#fecdd3;background:#fff8f9}.practical-student-card:hover{box-shadow:0 8px 18px #122b5214}.practical-student-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.55rem}.practical-roll-badge{min-width:38px;height:34px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;background:var(--practical-light);color:var(--practical-primary);font-weight:800;font-size:.85rem}.practical-student-name{font-size:.92rem;font-weight:800;color:var(--practical-text);margin-bottom:.35rem}.practical-student-meta{font-size:.78rem;color:var(--practical-muted);margin-bottom:.25rem}.practical-table{width:100%;border-collapse:collapse;min-width:760px}.practical-table thead th{position:sticky;top:0;background:var(--practical-light);text-align:left;padding:14px 16px;font-size:12px;letter-spacing:.04em;text-transform:uppercase;color:var(--practical-muted);font-weight:700;z-index:2;border-bottom:1px solid var(--practical-border)}.practical-table tbody td{padding:16px;border-top:1px solid var(--practical-border);font-size:15px;color:var(--practical-text)}.practical-table tbody tr:hover{background:var(--practical-light)}.attendance-toggle{padding:8px 16px;border-radius:999px;border:1px solid transparent;font-size:12px;font-weight:700;letter-spacing:.08em;cursor:pointer;transition:all .2s ease;min-width:106px;white-space:nowrap;font-family:Nunito Sans,system-ui,-apple-system,sans-serif}.attendance-toggle.present{background-color:#d1e7dd;color:#0f5132;border-color:#badbcc}.attendance-toggle.present:hover{background-color:#c3e6cb}.attendance-toggle.absent{background-color:#f8d7da;color:#842029;border-color:#f5c6cb}.attendance-toggle.absent:hover{background-color:#f5c2c7}.attendance-toggle:active{transform:translateY(1px)}.status-pill{display:inline-flex;padding:4px 12px;border-radius:999px;font-size:12px;font-weight:600}.status-pill.completed{background:#1f5fbf26;color:var(--practical-primary)}.status-pill.pending{background:#dc354526;color:var(--practical-danger)}.practical-pagination{display:flex;align-items:center;justify-content:flex-end;gap:16px;background:transparent;border-radius:12px;padding:12px 0}.practical-pagination--nav{justify-content:space-between}.practical-pagination--submit{justify-content:flex-end}.practical-footer-action{margin-top:1rem;display:flex;justify-content:flex-end}.practical-submit-btn{border:none;border-radius:999px;min-height:42px;padding:0 1.5rem;background:linear-gradient(135deg,var(--practical-primary),var(--practical-dark));color:#fff;font-weight:800;font-size:.9rem;cursor:pointer;box-shadow:0 6px 12px #1f5fbf26;transition:all .2s ease;font-family:Nunito Sans,system-ui,-apple-system,sans-serif}.practical-submit-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 8px 16px #1f5fbf40}.practical-submit-btn:disabled{opacity:.55;cursor:not-allowed;box-shadow:none}.action-pill,.checkbox-pill{display:inline-flex;align-items:center;justify-content:center;padding:10px 24px;border-radius:999px;border:none;color:#fff;background:linear-gradient(135deg,var(--practical-primary) 0%,var(--practical-dark) 100%);font-size:14px;font-weight:800;cursor:pointer;transition:all .2s ease;gap:8px;font-family:Nunito Sans,system-ui,-apple-system,sans-serif;box-shadow:0 6px 12px #1f5fbf26}.action-pill:hover:not(:disabled),.checkbox-pill:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 8px 16px #1f5fbf40}.action-pill:active:not(:disabled),.checkbox-pill:active:not(:disabled){transform:translateY(0)}.action-pill:disabled,.checkbox-pill:disabled{opacity:.6;cursor:not-allowed}.action-pill.is-locked,.checkbox-pill.is-locked{background:linear-gradient(135deg,#9aa4b2,#6b7684);cursor:not-allowed}.checkbox-pill input{display:none}.practical-loading,.practical-empty{padding:40px 24px;text-align:center;color:var(--practical-muted)}.practical-empty h4{margin:0 0 8px;color:var(--practical-text);font-size:18px;font-weight:700}.practical-error{color:#842029;font-size:14px;text-align:center;background:#fff1f2;border:1px solid #f5c6cb;border-radius:8px;padding:12px;font-weight:500}.page-indicator{font-size:14px;color:var(--practical-muted)}@keyframes slideUp{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 1024px){.practical-header{flex-direction:column;align-items:flex-start}.practical-header-meta{width:100%;min-width:unset}.practical-metrics{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.practical-page{padding:20px 16px 40px}.practical-card{padding:1.5rem;gap:20px}.practical-header{padding:1rem}.practical-header-main .practical-title{font-size:22px}.practical-header-meta{grid-template-columns:repeat(2,1fr)}.practical-metrics{grid-template-columns:1fr}.practical-table-head{flex-direction:column;align-items:flex-start}.practical-bulk-actions{width:100%}.practical-action-btn{flex:1 1 calc(50% - .3rem)}.action-pill,.checkbox-pill{width:100%;justify-content:center}}@media (max-width: 480px){.practical-page{padding:16px 12px 32px}.practical-card{padding:1rem;gap:16px}.practical-header{padding:12px}.practical-header-main .practical-title{font-size:20px}.practical-header-meta{grid-template-columns:1fr}.practical-header-meta span,.practical-header-meta strong{font-size:13px}.metric-card{padding:14px}.practical-table-container{max-height:50vh}.practical-table thead th,.practical-table tbody td{padding:12px 8px;font-size:12px}}:root{--header-height: 60px}.theory-page{padding:calc(var(--header-height) + 20px) 20px 24px;background:#f8fafc;min-height:100vh;box-sizing:border-box}.theory-card{background:#fff;border-radius:14px;padding:24px;box-shadow:0 8px 24px #0f172a0f;border:1px solid #e5e7eb;max-width:1400px;margin:0 auto}.theory-header{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;flex-wrap:wrap}.theory-header-main{flex:1;min-width:260px}.theory-eyebrow{font-size:12px;font-weight:700;letter-spacing:.9px;color:var(--primary-color, #1f5fbf);text-transform:uppercase;margin-bottom:6px}.theory-title{font-size:30px;font-weight:700;margin:0;color:#0f172a}.theory-subtitle{margin-top:8px;font-size:15px;color:#475569}.theory-header-meta{display:grid;grid-template-columns:repeat(3,minmax(110px,1fr));gap:12px;background:#f8fafc;padding:14px 16px;border-radius:12px;border:1px solid #e2e8f0}.theory-header-meta div{display:flex;flex-direction:column;gap:4px}.theory-header-meta span{font-size:11px;color:#64748b;text-transform:uppercase;letter-spacing:.6px}.theory-header-meta strong{font-size:14px;color:#0f172a}.theory-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:20px}.theory-table-section{margin-top:20px;border:1px solid #e2e8f0;border-radius:12px;overflow:hidden;background:#fff}.theory-table-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:14px 16px;border-bottom:1px solid #e2e8f0;background:#f8fafc}.theory-table-head h3{margin:0;color:#0f172a}.theory-table-head p{margin:4px 0 0;color:#64748b;font-size:13px}.theory-badge{background:#e0f2fe;color:#075985;border:1px solid #bae6fd;border-radius:999px;padding:5px 12px;font-size:12px;font-weight:700;white-space:nowrap}.theory-table-container{max-height:min(50vh,460px);overflow:auto}.theory-table{width:100%;border-collapse:collapse}.theory-table th,.theory-table td{padding:12px 14px;text-align:left;border-bottom:1px solid #edf2f7;font-size:14px}.theory-table th{background:#f8fafc;color:#475569;font-weight:700;position:sticky;top:0;z-index:1}.theory-table td{color:#1e293b}.theory-loading,.theory-empty{padding:24px;text-align:center;color:#64748b}.theory-empty h4{margin:0 0 6px;color:#1e293b}.theory-pagination{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-top:14px}.theory-pagination button{border:1px solid #cbd5e1;background:#fff;color:#1e293b;border-radius:8px;min-height:36px;padding:0 12px;font-weight:700}.theory-pagination button:not(:disabled):hover{border-color:var(--primary-color, #3b82f6);color:var(--primary-accent-dark, #1d4ed8);background:var(--primary-light, #eff6ff)}.theory-pagination button:disabled{opacity:.45;cursor:not-allowed}@media (max-width: 768px){.theory-page{padding:calc(var(--header-height) + 12px) 10px 16px}.theory-card{padding:14px}.theory-header-meta{grid-template-columns:1fr 1fr;width:100%}.theory-metrics{grid-template-columns:1fr}.theory-table-head{flex-direction:column}}.theory-attendance-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a73;display:flex;align-items:center;justify-content:center;padding:16px;z-index:1200;overflow-y:auto}.theory-attendance-form{width:min(760px,100%);background:#fff;border-radius:12px;border:1px solid #e2e8f0;box-shadow:0 20px 42px #02061740;padding:18px;position:relative;max-height:calc(100vh - 40px);overflow-y:auto}.theory-attendance-form h2{margin:0 36px 14px 0;color:#0f172a;font-size:28px;line-height:1.2}.theory-attendance-form .close-btn{position:absolute;top:12px;right:12px;width:32px;height:32px;border:none;border-radius:8px;background:#f1f5f9;color:#334155;font-size:24px;line-height:1;cursor:pointer}.theory-attendance-form .close-btn:hover{background:#e2e8f0}.form-content{margin-top:12px}.theory-form-group{margin-bottom:12px}.theory-form-group label{display:block;margin-bottom:6px;color:#334155;font-size:13px;font-weight:700}.theory-form-group input,.theory-form-group textarea{width:100%;border:1px solid #cbd5e1;border-radius:8px;min-height:40px;padding:8px 10px;font-size:14px;color:#0f172a;background:#fff}.theory-form-group input[readonly],.theory-form-group textarea[readonly]{background-color:#f1f5f9;color:#64748b;cursor:not-allowed;border-color:#e2e8f0}.theory-form-group textarea{min-height:88px;resize:vertical}.theory-form-group input:focus,.theory-form-group textarea:focus{outline:none;border-color:var(--primary-color, #3b82f6);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary-color, #3b82f6) 16%,transparent)}.validation-error{color:#dc2626;margin:6px 0 0;font-size:12px;font-weight:600}.button-group{display:flex;justify-content:flex-end;gap:10px;margin-top:8px}.button-group .btn{min-height:40px;padding:0 14px;border-radius:8px;font-weight:700;border:1px solid transparent;cursor:pointer}.button-group .btn.cancel{background:#fff;border-color:#cbd5e1;color:#334155}.button-group .btn.cancel:hover{background:#f8fafc}.button-group .btn.submit{background:var(--primary-color, #2563eb);color:#fff}.button-group .btn.submit:hover{background:var(--primary-accent-dark, #1d4ed8)}.theory-attendance-form footer{margin-top:14px;padding-top:10px;border-top:1px solid #e2e8f0;color:#94a3b8;font-size:12px;text-align:center}@media (max-width: 768px){.theory-attendance-form{padding:14px}.theory-attendance-form h2{font-size:24px}.button-group{flex-direction:column}.button-group .btn{width:100%}}:root{--final-primary: var(--primary-color, #1f5fbf);--final-primary-dark: var(--primary-accent-dark, #134996);--final-primary-soft: var(--primary-light, #eaf2ff);--final-bg-a: var(--primary-light, #f2f7ff);--final-bg-b: var(--dash-bg, #eaf2ff);--final-card: var(--card-bg, #ffffff);--final-border: var(--card-border, #d7e5f8);--final-text: var(--text-primary, #143257);--final-muted: var(--text-secondary, #5d7090);--final-success-bg: #ecfdf5;--final-success-border: #bfe8d5;--final-success-text: #0f5132;--final-danger-bg: #fff1f2;--final-danger-border: #f8c6cc;--final-danger-text: #842029}.final-container{width:min(1220px,100%);margin:0 auto;padding:1.25rem;color:var(--final-text);font-family:Nunito Sans,Segoe UI,sans-serif;min-height:calc(100vh - 64px);background:radial-gradient(circle at 8% 8%,color-mix(in srgb,var(--primary-color, #1f5fbf) 12%,transparent),transparent 38%),radial-gradient(circle at 92% 2%,color-mix(in srgb,var(--primary-accent-dark, #134996) 8%,transparent),transparent 35%),linear-gradient(180deg,var(--final-bg-a) 0%,var(--final-bg-b) 100%)}.final-att-header{border:1px solid var(--final-border);border-radius:18px;background:linear-gradient(145deg,#fff,#edf5ff);box-shadow:0 12px 26px #122b5214;padding:1.15rem 1.25rem;margin-bottom:1rem;display:flex;align-items:center;justify-content:space-between;gap:14px}.final-att-title{font-size:2.05rem;font-weight:800;margin:0;letter-spacing:-.2px;color:var(--final-text)}.final-att-subtitle{margin:.25rem 0 0;color:var(--final-muted);font-size:.9rem;font-weight:700}.final-att-actions{display:flex;gap:.6rem;flex-wrap:wrap}.final-att-action-btn{border:1px solid var(--final-border);background:#fff;color:var(--final-primary);border-radius:999px;min-height:38px;padding:0 16px;font-size:.85rem;font-weight:800;cursor:pointer;transition:all .2s ease}.final-att-action-btn:hover{border-color:var(--final-primary);background:var(--final-primary-soft);color:var(--final-primary)}.final-att-action-btn.ghost{color:var(--final-muted)}.info-card{background:var(--final-card);border:1px solid var(--final-border);border-radius:16px;box-shadow:0 10px 24px #122b5214;padding:1rem 1.2rem;display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem}.info-main h3{margin:0 0 .5rem;font-size:2rem;font-weight:800;color:var(--final-text)}.sub-text{font-size:1.1rem;color:var(--final-muted);font-weight:700}.info-grid{display:flex;gap:1.15rem;flex-wrap:wrap;color:var(--final-muted);font-size:1.35rem;font-weight:700}.info-meta p{margin:0 0 .4rem;color:var(--final-muted);font-size:1.2rem;font-weight:700}.summary-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.9rem;margin-bottom:1rem}.final-stat-card{background:#eef4ff;border:1px solid #cadeff;border-radius:14px;padding:1rem;display:flex;flex-direction:column;gap:.4rem;box-shadow:0 8px 18px #122b520f}.final-stat-card .label{font-size:.76rem;color:var(--final-muted);text-transform:uppercase;letter-spacing:.04em;font-weight:800}.final-stat-card .value{font-size:2rem;line-height:1.1;font-weight:800;color:var(--final-text)}.final-stat-card.success{background:var(--final-success-bg);border-color:var(--final-success-border)}.final-stat-card.success .value,.final-stat-card.success .label{color:var(--final-success-text)}.final-stat-card.danger{background:var(--final-danger-bg);border-color:var(--final-danger-border)}.final-stat-card.danger .value,.final-stat-card.danger .label{color:var(--final-danger-text)}.students-panel{border-radius:16px;border:1px solid var(--final-border);background:var(--final-card);padding:1rem;box-shadow:0 10px 24px #122b5214}.final-toolbar{border:1px solid var(--final-border);border-radius:16px;background:#fff;padding:.9rem;display:flex;flex-wrap:wrap;gap:.75rem;align-items:center;justify-content:space-between;margin-bottom:1rem}.final-search{flex:1 1 260px;min-height:40px;border:1px solid var(--final-border);border-radius:10px;padding:0 .85rem;color:var(--final-text);background:#f8fbff;font-size:.9rem}.final-search:focus{outline:none;border-color:#9dc0f0;box-shadow:0 0 0 3px #1f5fbf1f}.final-filter-chips{display:flex;flex-wrap:wrap;gap:.45rem}.final-filter-chip{border:1px solid #c8d8ef;background:#fff;color:var(--final-primary);border-radius:999px;min-height:34px;padding:0 .75rem;font-size:.78rem;font-weight:800;cursor:pointer}.final-filter-chip.active{background:#edf4ff;border-color:#9dc0f0}.final-students-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:.75rem}.final-student-card{border:1px solid var(--final-border);background:#fff;border-radius:12px;padding:.8rem;cursor:pointer;transition:all .2s ease}.final-student-card.present{border-color:var(--final-success-border);background:#f3fbf7}.final-student-card.absent{border-color:var(--final-danger-border);background:#fff8f9}.final-student-card:hover{box-shadow:0 8px 18px #122b5214}.final-student-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.55rem}.final-roll-badge{min-width:38px;height:34px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;background:#edf4ff;color:var(--final-primary);font-weight:800;font-size:.85rem}.final-student-name{font-size:.92rem;font-weight:800;color:var(--final-text);margin-bottom:.35rem}.final-student-meta{font-size:.78rem;color:var(--final-muted)}.attendance-table{width:100%;border-collapse:collapse;min-width:760px}.attendance-table th{position:sticky;top:0;z-index:1;background:#f3f8ff;padding:.82rem 1rem;text-align:left;font-size:.9rem;letter-spacing:.05em;text-transform:uppercase;color:var(--final-muted);border-bottom:1px solid var(--final-border)}.attendance-table td{padding:.9rem 1rem;border-top:1px solid var(--final-border);font-size:.95rem;cursor:pointer}.attendance-table tr:hover td{background:#1f5fbf0d}.font-medium{font-weight:700}.text-muted{color:var(--final-muted)}.status-pill{display:inline-flex;align-items:center;justify-content:center;min-width:112px;border-radius:999px;border:1px solid transparent;padding:.55rem 1rem;font-size:.76rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap}.row-present td{background:#1f5fbf08}.empty-msg,.loading-spinner{text-align:center;color:var(--final-muted);padding:1.4rem}.footer-action{margin-top:1rem;display:flex;justify-content:flex-end}.final-att-submit-btn{border:none;border-radius:999px;min-height:42px;padding:0 1.5rem;background:linear-gradient(135deg,var(--final-primary),var(--final-primary-dark));color:#fff;font-weight:800;font-size:.9rem;cursor:pointer;box-shadow:0 6px 12px #1f5fbf26;transition:all .2s ease}.final-att-submit-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 8px 16px #1f5fbf40}.final-att-submit-btn:disabled{opacity:.55;cursor:not-allowed;box-shadow:none}.error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.7rem}.btn-secondary{border:1px solid #c8d8ef;background:#fff;color:var(--final-primary);border-radius:999px;min-height:38px;padding:0 14px;font-size:.85rem;font-weight:800;text-decoration:none}@media (max-width: 900px){.final-att-header{flex-direction:column;align-items:flex-start}.final-att-title{font-size:1.7rem}.final-att-actions{width:100%}.summary-row{grid-template-columns:1fr}.info-card{flex-direction:column}}.theory-attendance-container{width:min(860px,100%);margin:0 auto;border:1px solid var(--atf-border);border-radius:18px;background:linear-gradient(145deg,#fff,#eff6ff);box-shadow:0 12px 26px #122b5214;padding:1rem}.header-row{margin-bottom:.8rem}.header-row h3{margin:0;color:var(--atf-text);font-size:1.35rem;font-weight:800}.Ciaan-info{margin-bottom:.9rem;border:1px solid #cadeff;border-radius:10px;background:#eef4ff;color:#2c4f7e;padding:.55rem .7rem;font-size:.84rem}.form-wrapper{width:100%}.form-box{border:1px solid #dce8f9;border-radius:12px;background:#fff;margin-bottom:.7rem;overflow:hidden}.label-bar{background:#f5f9ff;border-bottom:1px solid #e1ebf9;color:#426590;font-size:.8rem;text-transform:uppercase;letter-spacing:.03em;font-weight:700;padding:.5rem .65rem}.ea-input-wrapper{padding:.65rem}.ea-input-wrapper input,.ea-input-wrapper select{width:100%;min-height:42px;border:1px solid #c8d8ef;border-radius:10px;padding:0 .72rem;color:#173058;font-size:.95rem}.ea-input-wrapper input:focus,.ea-input-wrapper select:focus{outline:none;border-color:#9fbee4;box-shadow:0 0 0 .2rem #0f5cc024}.ea-submit-wrapper{margin-top:.95rem;text-align:right}.submit-btn{min-height:42px;border:none;border-radius:10px;padding:0 1rem;font-size:.9rem;font-weight:700;color:#fff;background:linear-gradient(135deg,var(--atf-primary),var(--atf-primary-deep));box-shadow:0 10px 22px #0f5cc042}.submit-btn:hover{transform:translateY(-1px);filter:brightness(1.03)}@media (max-width: 700px){.attendance-main-content{padding:.9rem}.theory-attendance-container{padding:.85rem}.ea-submit-wrapper{text-align:stretch}.submit-btn{width:100%}}.attendance-main-content{--atf-bg-a: var(--primary-light, #f3f8ff);--atf-bg-b: var(--dash-bg, #ecf4ff);--atf-panel: var(--card-bg, #ffffff);--atf-border: var(--card-border, #d9e5f6);--atf-text: var(--text-primary, #132844);--atf-muted: var(--text-secondary, #60728c);--atf-primary: var(--primary-color, #0f5cc0);--atf-primary-deep: var(--primary-accent-dark, #084892);min-height:calc(100vh - 64px);padding:1.25rem;background:radial-gradient(circle at 8% 8%,rgba(15,92,192,.12),transparent 38%),radial-gradient(circle at 92% 2%,rgba(8,72,146,.1),transparent 34%),linear-gradient(180deg,var(--atf-bg-a),var(--atf-bg-b))}.tutorial-page-container{background:#fff;border-radius:14px;padding:24px;box-shadow:0 8px 24px #0f172a0f;border:1px solid #e5e7eb;max-width:1400px;margin:0 auto}.tutorial-header{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;flex-wrap:wrap}.tutorial-header-main{flex:1;min-width:260px}.tutorial-eyebrow{font-size:12px;font-weight:700;letter-spacing:.9px;color:var(--primary-color, #1f5fbf);text-transform:uppercase;margin-bottom:6px}.tutorial-title{font-size:30px;font-weight:700;margin:0;color:#0f172a}.tutorial-subtitle{margin-top:8px;font-size:15px;color:#475569}.tutorial-header-meta{display:grid;grid-template-columns:repeat(3,minmax(110px,1fr));gap:12px;background:#f8fafc;padding:14px 16px;border-radius:12px;border:1px solid #e2e8f0}.tutorial-header-meta div{display:flex;flex-direction:column;gap:4px}.tutorial-header-meta span{font-size:11px;color:#64748b;text-transform:uppercase;letter-spacing:.6px}.tutorial-header-meta strong{font-size:14px;color:#0f172a}.tutorial-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:20px}.metric-card{background:#f8fafc;border-radius:12px;padding:16px;border:1px solid #e2e8f0;display:flex;flex-direction:column;gap:6px}.metric-card span{font-size:12px;color:#64748b;text-transform:uppercase;letter-spacing:.4px}.metric-card strong{font-size:24px;font-weight:700;color:#0f172a}.metric-card.success{background:var(--primary-light, #eef4ff);border-color:var(--card-border, #c7daf7)}.metric-card.success strong{color:var(--primary-color, #1f5fbf)}.metric-card.warning{background:#fff7ed;border-color:#fed7aa}.metric-card.warning strong{color:#ea580c}.tutorial-table-section{margin-top:20px;border:1px solid #e2e8f0;border-radius:12px;overflow:hidden;background:#fff}.tutorial-table-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:14px 16px;border-bottom:1px solid #e2e8f0;background:#f8fafc}.tutorial-table-head h3{margin:0;color:#0f172a}.tutorial-table-head p{margin:4px 0 0;color:#64748b;font-size:13px}.tutorial-badge{background:#e0f2fe;color:#075985;border:1px solid #bae6fd;border-radius:999px;padding:5px 12px;font-size:12px;font-weight:700;white-space:nowrap}.tutorial-table-container{max-height:min(50vh,460px);overflow:auto}.tutorial-table{width:100%;border-collapse:collapse}.tutorial-table th,.tutorial-table td{padding:12px 14px;text-align:left;border-bottom:1px solid #edf2f7;font-size:14px}.tutorial-table th{background:#f8fafc;color:#475569;font-weight:700;position:sticky;top:0;z-index:1}.tutorial-table td{color:#1e293b}.checkbox-pill{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;border:1px solid var(--primary-color, #93c5fd);background:var(--primary-light, #eff6ff);color:var(--primary-accent-dark, #1d4ed8);border-radius:999px;font-weight:700;font-size:12px;cursor:pointer}.checkbox-pill.is-locked{border-color:var(--card-border, #9dc0f0);background:var(--primary-light, #eef4ff);color:var(--primary-color, #1f5fbf);cursor:not-allowed}.checkbox-pill input{margin:0}.tutorial-loading,.tutorial-empty{padding:24px;text-align:center;color:#64748b}.tutorial-empty h4{margin:0 0 6px;color:#1e293b}.tutorial-pagination{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-top:14px}.tutorial-pagination button{border:1px solid #cbd5e1;background:#fff;color:#1e293b;border-radius:8px;min-height:36px;padding:0 12px;font-weight:700}.tutorial-pagination button:not(:disabled):hover{border-color:var(--primary-color, #3b82f6);color:var(--primary-accent-dark, #1d4ed8);background:var(--primary-light, #eff6ff)}.tutorial-pagination button:disabled{opacity:.45;cursor:not-allowed}.page-indicator{color:#475569;font-size:13px;font-weight:600}.tutorial-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a73;display:flex;align-items:center;justify-content:center;padding:16px;z-index:1200;overflow-y:auto}.tutorial-modal-form{width:min(760px,100%);background:#fff;border-radius:12px;border:1px solid #e2e8f0;box-shadow:0 20px 42px #02061740;padding:18px;position:relative;max-height:calc(100vh - 40px);overflow-y:auto}.tutorial-modal-form h2{margin:0 36px 14px 0;color:#0f172a;font-size:28px;line-height:1.2}.tutorial-modal-form .close-btn{position:absolute;top:12px;right:12px;width:32px;height:32px;border:none;border-radius:8px;background:#f1f5f9;color:#334155;font-size:24px;line-height:1;cursor:pointer}.tutorial-modal-form .close-btn:hover{background:#e2e8f0}.tutorial-modal-context-header{background-color:#e8f5e9;padding:12px;margin-bottom:15px;border-radius:6px;border-left:4px solid #4CAF50}.tutorial-modal-subject{margin:0 0 5px;font-size:14px;font-weight:700;color:#2e7d32}.tutorial-modal-meta{margin:0;font-size:12px;color:#555}.tutorial-form-group{margin-bottom:12px}.tutorial-form-group label{display:block;margin-bottom:6px;color:#334155;font-size:13px;font-weight:700}.tutorial-form-group input,.tutorial-form-group textarea{width:100%;border:1px solid #cbd5e1;border-radius:8px;min-height:40px;padding:8px 10px;font-size:14px;color:#0f172a;background:#fff}.tutorial-form-group textarea{min-height:88px;resize:vertical}.tutorial-form-group input[readonly],.tutorial-form-group textarea[readonly]{background-color:#f1f5f9;color:#64748b;cursor:not-allowed;border-color:#e2e8f0}.tutorial-form-group input:focus,.tutorial-form-group textarea:focus{outline:none;border-color:var(--primary-color, #3b82f6);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary-color, #3b82f6) 16%,transparent)}.tutorial-modal-form footer{margin-top:14px;padding-top:10px;border-top:1px solid #e2e8f0;color:#94a3b8;font-size:12px;text-align:center}@media (max-width: 768px){.tutorial-modal-form{padding:14px}.tutorial-modal-form h2{font-size:24px}.tutorial-header-meta{grid-template-columns:1fr 1fr;width:100%}.tutorial-metrics{grid-template-columns:1fr}.tutorial-table-head{flex-direction:column}}:root{--eia-primary: var(--primary-color, #1f5fbf);--eia-primary-dark: var(--primary-accent-dark, #134996);--eia-primary-light: var(--primary-light, #eaf2ff);--eia-secondary: var(--primary-color, #355ea8);--eia-secondary-light: var(--primary-light, #f3f7ff);--eia-success: #1d8f5f;--eia-danger: #dc3545;--eia-warning: var(--yellow-accent, #f59e0b);--eia-info: var(--primary-color, #3b82f6);--eia-text-primary: var(--text-primary, #143257);--eia-text-secondary: var(--text-secondary, #5d7090);--eia-bg-light: var(--primary-light, #edf4ff);--eia-border: var(--card-border, #d7e5f8);--eia-shadow: 0 4px 6px rgba(0, 0, 0, .07);--eia-shadow-lg: 0 10px 25px rgba(0, 0, 0, .1)}.eia-page{min-height:100vh;background:radial-gradient(circle at 8% 8%,color-mix(in srgb,var(--primary-color, #1f5fbf) 12%,transparent),transparent 38%),radial-gradient(circle at 92% 2%,color-mix(in srgb,var(--primary-accent-dark, #134996) 8%,transparent),transparent 35%),linear-gradient(180deg,#f2f7ff,#eaf2ff);padding:0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.eia-error-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(180deg,#f2f7ff,#eaf2ff);padding:2rem}.eia-error-container{text-align:center;padding:2rem;background:#fff;border-radius:12px;box-shadow:var(--eia-shadow-lg);max-width:420px;border:1px solid var(--eia-border)}.eia-error-container i{font-size:3rem;color:var(--eia-danger);margin-bottom:.75rem;display:block}.eia-error-container h2{color:var(--eia-text-primary);margin:0 0 .5rem}.eia-error-container p{color:var(--eia-text-secondary);margin-bottom:1rem}.eia-back-button{padding:.75rem 1.2rem;background:linear-gradient(135deg,var(--eia-primary),var(--eia-primary-dark));color:#fff;border:none;border-radius:8px;cursor:pointer;font-weight:600}.eia-hero{background:linear-gradient(145deg,#fff,#eef5ff);color:var(--eia-text-primary);padding:1.35rem 1.5rem;text-align:left;position:relative;overflow:hidden;border:1px solid var(--eia-border);border-radius:18px;margin:1.25rem;box-shadow:0 12px 26px #122b5214}.eia-hero:before,.eia-hero:after{content:"";position:absolute;border-radius:50%;background:#1f5fbf14}.eia-hero:before{top:-55%;right:-12%;width:300px;height:300px}.eia-hero:after{bottom:-35%;left:-8%;width:230px;height:230px}.eia-hero-title{font-size:2rem;font-weight:800;margin:0 0 .35rem;position:relative;z-index:1;letter-spacing:-.3px}.eia-hero-subtitle{font-size:1rem;font-weight:600;color:var(--eia-text-secondary);margin:0;position:relative;z-index:1}.eia-container{max-width:1100px;margin:0 auto;padding:1rem 1.5rem 2rem}.eia-alert{display:flex;align-items:center;gap:.75rem;padding:1rem;border-radius:8px;margin-bottom:1.25rem;font-weight:600}.eia-alert-success{background:#ecfdf5;border:1px solid #bfe8d5;color:#0f5132}.eia-alert-error{background:#fff1f2;border:1px solid #f8c6cc;color:#842029}.eia-context-card{background:#fff;border:1px solid var(--eia-border);border-radius:12px;box-shadow:var(--eia-shadow);margin-bottom:1.5rem;overflow:hidden}.eia-context-header{background:linear-gradient(135deg,#edf4ff,#f4f8ff);padding:.9rem 1.2rem;color:var(--eia-primary);font-weight:700;border-bottom:1px solid var(--eia-border)}.eia-context-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;padding:1.2rem}.eia-context-item{display:flex;flex-direction:column}.eia-context-label{font-size:.75rem;font-weight:700;color:var(--eia-text-secondary);text-transform:uppercase;letter-spacing:.4px;margin-bottom:.35rem}.eia-context-value{font-size:.95rem;font-weight:700;color:var(--eia-text-primary)}.eia-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;margin-bottom:1.5rem}.eia-stat-card{background:#fff;border:1px solid var(--eia-border);border-radius:12px;padding:1rem;box-shadow:var(--eia-shadow);display:flex;align-items:center;gap:.8rem}.eia-stat-icon{width:50px;height:50px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:1.4rem;flex-shrink:0}.eia-stat-present .eia-stat-icon{background:#e8f8f1;color:var(--eia-success)}.eia-stat-absent .eia-stat-icon{background:#fff0f2;color:var(--eia-danger)}.eia-stat-total .eia-stat-icon{background:#edf4ff;color:var(--eia-info)}.eia-stat-percentage .eia-stat-icon{background:#fff6e7;color:var(--eia-warning)}.eia-stat-value{font-size:1.35rem;font-weight:800;color:var(--eia-text-primary);line-height:1}.eia-stat-label{margin-top:.2rem;font-size:.85rem;color:var(--eia-text-secondary);font-weight:600}.eia-form{background:#fff;border:1px solid var(--eia-border);border-radius:12px;padding:1.5rem;box-shadow:var(--eia-shadow)}.eia-form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem;margin-bottom:1.5rem}.eia-form-group{display:flex;flex-direction:column}.eia-form-label{font-size:.85rem;font-weight:700;color:var(--eia-text-primary);margin-bottom:.45rem}.eia-form-input,.eia-form-textarea{padding:.75rem .9rem;border:1px solid var(--eia-border);border-radius:8px;font-size:.95rem;color:var(--eia-text-primary);font-family:inherit}.eia-form-input:focus,.eia-form-textarea:focus{outline:none;border-color:var(--eia-primary);box-shadow:0 0 0 3px #1f5fbf1f;background:#1f5fbf05}.eia-form-textarea{resize:vertical;min-height:88px}.eia-students-section{margin-top:1.5rem;padding-top:1.25rem;border-top:1px solid var(--eia-border)}.eia-section-header{display:flex;align-items:center;justify-content:space-between;gap:.8rem;margin-bottom:1rem}.eia-section-header h3{margin:0;color:var(--eia-text-primary);font-size:1.05rem}.eia-section-badge{display:inline-flex;border-radius:999px;padding:.3rem .65rem;background:#edf4ff;border:1px solid #cadcff;color:#1b4f99;font-size:.78rem;font-weight:700}.eia-students-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(235px,1fr));gap:.9rem}.eia-student-card{background:#fff;border:1px solid var(--eia-border);border-radius:10px;padding:.9rem;transition:box-shadow .2s ease,border-color .2s ease}.eia-student-card.eia-present{border-color:#bfe8d5;background:#f3fbf7}.eia-student-card.eia-absent{border-color:#f0d0d5;background:#fff8f9}.eia-student-card:hover{box-shadow:var(--eia-shadow-lg)}.eia-student-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.7rem}.eia-student-roll{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;background:#edf4ff;color:var(--eia-primary);border-radius:8px;font-weight:800;font-size:.85rem}.status-pill{display:inline-flex;align-items:center;justify-content:center;min-width:90px;border-radius:999px;border:1px solid transparent;padding:.4rem .8rem;font-size:.76rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;font-family:inherit}.status-toggle{cursor:pointer;transition:all .2s ease}.status-toggle:hover{transform:translateY(-1px)}.status-pill.present{background:#e8f8f1;color:#0f5132;border-color:#bfe8d5}.status-pill.absent{background:#fff1f2;color:#842029;border-color:#f8c6cc}.eia-student-name{font-weight:700;color:var(--eia-text-primary);margin-bottom:.45rem;font-size:.93rem}.eia-student-meta{font-size:.78rem;color:var(--eia-text-secondary);margin-bottom:.3rem}.eia-no-students{text-align:center;padding:2.25rem;background:#f7faff;border-radius:10px;border:1px dashed var(--eia-border);color:var(--eia-text-secondary)}.eia-no-students i{font-size:2rem;margin-bottom:.4rem;display:block;opacity:.6}.eia-actions{display:flex;gap:.8rem;justify-content:flex-end;margin-top:1.5rem;padding-top:1.2rem;border-top:1px solid var(--eia-border)}.eia-button{padding:.78rem 1.75rem;border:none;border-radius:999px;font-size:.92rem;font-weight:800;cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;justify-content:center;gap:.4rem}.eia-button-primary{background:linear-gradient(135deg,var(--eia-primary),var(--eia-primary-dark));color:#fff;box-shadow:0 6px 12px #1f5fbf26}.eia-button-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 8px 16px #1f5fbf40}.eia-button-secondary{background:#fff;color:var(--eia-text-primary);border:1px solid var(--eia-border)}.eia-button-secondary:hover:not(:disabled){border-color:var(--eia-primary);color:var(--eia-primary);background:var(--eia-primary-light)}.eia-button:disabled{opacity:.55;cursor:not-allowed}@media (max-width: 768px){.eia-hero-title{font-size:1.5rem}.eia-hero-subtitle{font-size:.9rem}.eia-container{padding:.9rem 1rem 1.5rem}.eia-stats-grid{grid-template-columns:repeat(2,1fr)}.eia-actions{flex-direction:column-reverse}.eia-button{width:100%}}@media (max-width: 480px){.eia-hero{margin:1rem;padding:1rem}.eia-hero-title{font-size:1.2rem}.eia-stats-grid,.eia-form-grid,.eia-context-grid,.eia-students-grid{grid-template-columns:1fr}.eia-section-header{flex-direction:column;align-items:flex-start}}:root{--ea2-primary: var(--primary-color, #1f5fbf);--ea2-primary-dark: var(--primary-accent-dark, #134996);--ea2-primary-light: var(--primary-light, #eaf2ff);--ea2-secondary: var(--primary-color, #355ea8);--ea2-secondary-light: var(--primary-light, #e0e7ff);--ea2-text-primary: var(--text-primary, #143257);--ea2-text-secondary: var(--text-secondary, #5d7090);--ea2-bg-light: var(--primary-light, #edf4ff);--ea2-border: var(--card-border, #d7e5f8);--ea2-shadow: 0 4px 6px rgba(0, 0, 0, .07);--ea2-shadow-lg: 0 10px 25px rgba(0, 0, 0, .1)}.ea2-page{min-height:100vh;background:radial-gradient(circle at 8% 8%,color-mix(in srgb,var(--primary-color, #1f5fbf) 12%,transparent),transparent 38%),radial-gradient(circle at 92% 2%,color-mix(in srgb,var(--primary-accent-dark, #134996) 8%,transparent),transparent 35%),linear-gradient(180deg,#f2f7ff,#eaf2ff);padding:0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.ea2-hero{background:linear-gradient(145deg,#fff,#eef5ff);color:var(--ea2-text-primary);padding:2.5rem 2rem;text-align:center;position:relative;overflow:hidden}.ea2-hero:before,.ea2-hero:after{content:"";position:absolute;border-radius:50%;background:#1f5fbf14}.ea2-hero:before{top:-50%;right:-10%;width:300px;height:300px}.ea2-hero:after{bottom:-30%;left:-5%;width:250px;height:250px}.ea2-hero-title{font-size:2rem;font-weight:800;margin:0 0 .5rem;position:relative;z-index:1;letter-spacing:-.5px}.ea2-hero-subtitle{font-size:.95rem;font-weight:600;opacity:1;color:var(--ea2-text-secondary);margin:0;position:relative;z-index:1}.ea2-Ciaan-highlight{display:inline-block;background:#eaf2ff;padding:.25rem .75rem;border-radius:6px;font-weight:600;margin:0 .25rem;border:1px solid #cadcff}.ea2-container{max-width:1200px;margin:0 auto;padding:2.5rem 1.5rem}.ea2-state-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;text-align:center;border-radius:12px;background:#fff;border:1px solid var(--ea2-border);box-shadow:var(--ea2-shadow);color:var(--ea2-text-secondary)}.ea2-state-container i{font-size:3rem;margin-bottom:1rem;opacity:.6}.ea2-state-container p{font-size:1rem;margin:0}.ea2-loading .ea2-spinner{width:48px;height:48px;border:4px solid var(--ea2-border);border-top-color:var(--ea2-primary);border-radius:50%;animation:ea2-spin .8s linear infinite;margin-bottom:1rem}@keyframes ea2-spin{to{transform:rotate(360deg)}}.ea2-error{background:#fef2f2;border-color:#fecaca;color:#991b1b}.ea2-error i{color:#dc2626}.ea2-no-data{min-height:300px}.ea2-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.5rem;animation:ea2-fade-in .4s ease-out}@keyframes ea2-fade-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.ea2-record-card{background:#fff;border:1px solid var(--ea2-border);border-radius:12px;padding:1.5rem;box-shadow:var(--ea2-shadow);transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;display:flex;flex-direction:column;animation:ea2-card-appear .5s ease-out both}@keyframes ea2-card-appear{0%{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}.ea2-record-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--ea2-primary),var(--ea2-secondary));transform:scaleX(0);transform-origin:left;transition:transform .3s ease}.ea2-record-card:hover{border-color:var(--ea2-primary);box-shadow:var(--ea2-shadow-lg);transform:translateY(-4px)}.ea2-record-card:hover:before{transform:scaleX(1)}.ea2-card-header{display:flex;align-items:flex-start;gap:1rem;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid var(--ea2-border)}.ea2-chapter-badge{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:10px;background:linear-gradient(135deg,var(--ea2-primary-light),var(--ea2-secondary-light));color:var(--ea2-primary);font-weight:700;font-size:.95rem;flex-shrink:0}.ea2-card-title{flex:1;font-size:1rem;font-weight:600;color:var(--ea2-text-primary);word-break:break-word}.ea2-card-content{flex:1;margin-bottom:1.5rem}.ea2-detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem;padding:1rem;background:var(--ea2-bg-light);border-radius:8px}.ea2-detail-item{display:flex;flex-direction:column}.ea2-label{font-size:.75rem;font-weight:600;color:var(--ea2-text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:.25rem}.ea2-value{font-size:.875rem;color:var(--ea2-text-primary);font-weight:500;word-break:break-word}.ea2-edit-button{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:.875rem;background:linear-gradient(135deg,var(--ea2-primary),var(--ea2-primary-dark));color:#fff;border:none;border-radius:8px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .3s ease}.ea2-edit-button:hover{transform:translateY(-2px);box-shadow:0 6px 16px #1f5fbf47}.ea2-edit-button:active{transform:translateY(0)}.ea2-edit-button i{font-size:1rem}@media (max-width: 768px){.ea2-hero{padding:2rem 1.5rem}.ea2-hero-title{font-size:1.5rem}.ea2-hero-subtitle{font-size:.9rem}.ea2-container{padding:1.5rem 1rem}.ea2-list{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem}.ea2-detail-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 480px){.ea2-hero{padding:1.5rem 1rem}.ea2-hero-title{font-size:1.25rem}.ea2-hero-subtitle{font-size:.85rem}.ea2-container{padding:1rem}.ea2-list,.ea2-detail-grid{grid-template-columns:1fr;gap:.75rem}.ea2-record-card{padding:1rem}.ea2-card-header{gap:.75rem;margin-bottom:.75rem;padding-bottom:.75rem}.ea2-chapter-badge{width:40px;height:40px;font-size:.8rem}.ea2-card-content{margin-bottom:1rem}}.vat2-panel{border:1px solid var(--vat2-border);border-radius:16px;background:#fff;box-shadow:0 10px 24px #122b5214;padding:.9rem}.vat2-table-wrapper{width:100%;overflow:auto;max-height:calc(100vh - 260px);border:1px solid #d7e5f8;border-radius:12px}.vat2-table{width:100%;border-collapse:collapse;table-layout:fixed;min-width:780px}.vat2-table th,.vat2-table td{border:1px solid var(--vat2-border);padding:.45rem .35rem;text-align:center;font-size:.76rem;width:64px;min-width:64px;max-width:64px}.vat2-table thead th{background:var(--vat2-primary-light);color:var(--vat2-primary);font-weight:800;letter-spacing:.03em;position:sticky;top:0;z-index:2}.vat2-table .first-col{position:sticky;left:0;z-index:1;background:var(--vat2-primary-light);color:var(--vat2-text);width:96px!important;min-width:96px!important;max-width:96px!important;text-align:left;padding-left:.5rem;font-weight:700}.vat2-table thead .first-col{z-index:3}.vat2-status{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px;border-radius:999px;font-weight:800;font-size:.72rem}.vat2-status.present{color:#1d8f5f;background:#e8f8f1;border:1px solid #bfe8d5}.vat2-status.absent{color:#dc3545;background:#fff1f2;border:1px solid #f8c6cc}.vat2-actions{margin-top:.85rem;display:flex;justify-content:flex-end}.vat2-print-btn{border:none;border-radius:10px;min-height:40px;padding:0 1rem;color:#fff;font-size:.9rem;font-weight:700;cursor:pointer;background:linear-gradient(135deg,var(--vat2-primary),var(--vat2-primary-dark))}.vat2-state{margin:1rem;border:1px solid var(--vat2-border);border-radius:12px;padding:1rem;text-align:center;background:#fff;color:var(--vat2-muted);font-weight:700}.vat2-state-error{border-color:#f8c6cc;background:#fff1f2;color:#842029}@media print{.vat2-hero,.vat2-actions{display:none!important}.vat2-page,.vat2-panel,.vat2-table-wrapper{background:#fff!important;box-shadow:none!important;border:none!important;padding:0!important;margin:0!important;max-height:none!important;overflow:visible!important}.vat2-table thead th,.vat2-table .first-col{position:static!important}.vat2-page:before{content:"Theory Attendance";display:block;text-align:center;font-size:18px;font-weight:700;margin-bottom:14px}}.vbs-page{min-height:calc(100vh - 64px);padding:1.2rem;background:radial-gradient(circle at 8% 8%,rgba(31,95,191,.12),transparent 38%),radial-gradient(circle at 92% 2%,rgba(19,73,150,.08),transparent 35%),linear-gradient(180deg,#f2f7ff,#eaf2ff)}.vbs-hero{max-width:980px;margin:0 auto 1rem;border:1px solid #d7e5f8;border-radius:18px;background:linear-gradient(145deg,#fff,#edf5ff);box-shadow:0 12px 26px #122b5214;padding:1.1rem 1.2rem}.vbs-hero h2{margin:0;font-size:1.8rem;font-weight:800;color:#143257}.vbs-hero p{margin:.35rem 0 0;color:#5d7090;font-size:.95rem;font-weight:600}.vbs-panel{max-width:680px;margin:0 auto;border:1px solid #d7e5f8;border-radius:16px;background:#fff;box-shadow:0 10px 24px #122b5214;padding:1rem}.vbs-field{display:grid;gap:.5rem}.vbs-field label{margin:0;font-size:.86rem;font-weight:700;letter-spacing:.02em;text-transform:uppercase;color:#5d7090}.vbs-field select{width:100%;min-height:42px;border:1px solid #cddff6;border-radius:10px;background:#f8fbff;color:#183861;font-size:.92rem;font-weight:600;padding:0 .7rem}.vbs-field select:focus{outline:none;border-color:#9fc2f1;box-shadow:0 0 0 3px #1f5fbf1f}.vbs-submit{margin-top:.85rem;width:100%;border:none;border-radius:10px;min-height:42px;padding:0 1rem;color:#fff;font-size:.92rem;font-weight:700;cursor:pointer;background:linear-gradient(135deg,#1f5fbf,#134996)}.vbs-submit:disabled{opacity:.55;cursor:not-allowed}.vbs-state{max-width:980px;margin:0 auto;border:1px solid #d7e5f8;border-radius:14px;background:#fff;color:#5d7090;font-weight:700;text-align:center;padding:1rem}.vbs-state.error{border-color:#f8c6cc;background:#fff1f2;color:#842029}.vat2-page{--vat2-primary: var(--primary-color, #1f5fbf);--vat2-primary-dark: var(--primary-accent-dark, #134996);--vat2-primary-light: var(--primary-light, #edf4ff);--vat2-bg-a: var(--primary-light, #f2f7ff);--vat2-bg-b: var(--dash-bg, #eaf2ff);--vat2-border: var(--card-border, #d7e5f8);--vat2-text: var(--text-primary, #143257);--vat2-muted: var(--text-secondary, #5d7090);min-height:100vh;padding:1.2rem;background:radial-gradient(circle at 8% 8%,color-mix(in srgb,var(--vat2-primary) 12%,transparent),transparent 38%),radial-gradient(circle at 92% 2%,color-mix(in srgb,var(--vat2-primary-dark) 8%,transparent),transparent 35%),linear-gradient(180deg,var(--vat2-bg-a) 0%,var(--vat2-bg-b) 100%)}.vat2-hero{border:1px solid var(--vat2-border);border-radius:18px;background:linear-gradient(145deg,#ffffff,var(--vat2-primary-light));box-shadow:0 12px 26px #122b5214;padding:1.15rem 1.25rem;margin-bottom:.9rem}.vat2-hero h1{margin:0;font-size:1.9rem;font-weight:800;color:var(--vat2-text)}.vat2-hero p{margin:.35rem 0 0;color:var(--vat2-muted);font-weight:600}.vat2-panel{border:1px solid var(--vat2-border);border-radius:18px;background:#fff;box-shadow:0 10px 24px #122b5214;padding:.95rem;margin-bottom:.9rem}.vat2-table-wrapper{min-width:0;overflow-x:auto;border-radius:12px;border:1px solid var(--vat2-border)}.vat2-table{width:100%;border-collapse:collapse;min-width:720px;margin:0}.vat2-table thead{background:var(--vat2-primary-light)}.vat2-table th{padding:.85rem;text-align:center;font-weight:800;font-size:.88rem;color:var(--vat2-primary);text-transform:uppercase;letter-spacing:.03em;border:1px solid var(--vat2-border)}.vat2-table td{padding:.75rem;text-align:center;font-size:.9rem;color:var(--vat2-text);border:1px solid var(--vat2-border)}.vat2-table tbody tr:nth-child(2n) td{background:#fbfdff}.vat2-status{display:inline-block;padding:.35rem .75rem;border-radius:8px;font-weight:700;font-size:.85rem}.vat2-status--present{background:#1d8f5f1f;color:#1d8f5f}.vat2-status--absent{background:#dc35451f;color:#dc3545}.vat2-actions{margin-top:.9rem;display:flex;justify-content:flex-end;gap:.6rem}.vat2-print-btn{border:none;border-radius:10px;min-height:40px;padding:0 1.1rem;color:#fff;font-size:.9rem;font-weight:700;cursor:pointer;background:linear-gradient(135deg,var(--vat2-primary),var(--vat2-primary-dark));transition:all .2s ease}.vat2-print-btn:hover{transform:translateY(-2px);box-shadow:0 8px 18px color-mix(in srgb,var(--vat2-primary) 25%,transparent)}.vat2-state{min-height:calc(100vh - 64px);display:flex;align-items:center;justify-content:center;color:#5d7090;font-size:1.1rem;font-weight:600}@media (max-width: 768px){.vat2-hero h1{font-size:1.5rem}.vat2-panel{padding:.7rem}.vat2-table th,.vat2-table td{padding:.5rem .3rem;font-size:.75rem}}@media print{.vat2-page{background:#fff!important;padding:0!important}.vat2-print-btn,.vat2-actions{display:none!important}.vat2-table{min-width:auto!important;page-break-inside:avoid}}:root{--primary: var(--primary-accent, #10b981);--primary-hover: var(--primary-accent-dark, #059669);--primary-light: var(--primary-accent-light, #d1fae5);--bg-color: var(--bg-color, #f3f4f6);--panel-bg: var(--card-bg, #ffffff);--border-color: var(--border-color, #e5e7eb);--text-main: var(--text-main, #111827);--text-muted: var(--text-muted, #6b7280);--danger: var(--danger-color, #ef4444);--success-bg: color-mix(in srgb, var(--primary-light, #d1fae5) 50%, #ffffff);--success-text: var(--primary-accent-dark, #065f46)}.admin-panel-layout{padding:40px 20px 250px;background-color:var(--bg-color);min-height:100vh;display:flex;justify-content:center}.panel-card{width:100%;max-width:800px;background:var(--panel-bg);border-radius:16px;box-shadow:0 4px 6px -1px #0000000d,0 2px 4px -1px #00000008;overflow:hidden;border:1px solid var(--border-color);animation:slideUp .4s ease-out}.panel-header{padding:24px 32px;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center;background:var(--panel-bg)}.panel-title{margin:0;font-size:1.5rem;font-weight:700;color:var(--text-main)}.panel-subtitle{margin:4px 0 0;color:var(--text-muted);font-size:.9rem}.panel-body{padding:32px}.form-vertical{display:flex;flex-direction:column;gap:24px}.form-row{display:flex;gap:24px}.form-field{display:flex;flex-direction:column;gap:8px}.col{flex:1}.form-field label{font-size:.9rem;font-weight:600;color:var(--text-main, #111827)}.form-field input,.form-field select{padding:12px 16px;border:1px solid var(--border-color, #d1d5db);border-radius:8px;font-size:.95rem;transition:all .2s ease;background:var(--panel-bg);color:var(--text-main)}.form-field input:focus,.form-field select:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 25%,transparent)}.form-field input:disabled{background:color-mix(in srgb,var(--panel-bg) 60%,#f9fafb);color:var(--text-muted, #6b7280);cursor:not-allowed}.field-hint{font-size:.8rem;color:var(--text-muted);margin:0}.form-actions{margin-top:16px;display:flex;justify-content:flex-end;gap:16px;padding-top:20px;border-top:1px dashed var(--border-color)}.btn-primary{background:var(--primary);color:#fff;border:none;padding:12px 24px;border-radius:8px;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:8px;transition:all .2s ease}.btn-primary:hover{background:var(--primary-hover);transform:translateY(-2px);box-shadow:0 4px 12px #10b9814d}.btn-primary:disabled{background:color-mix(in srgb,var(--primary-light, #d1fae5) 60%,#f2fff6);cursor:not-allowed;transform:none;box-shadow:none}.btn-secondary{background:var(--panel-bg, #ffffff);border:1px solid var(--border-color, #e5e7eb);color:var(--text-muted, #6b7280);padding:12px 24px;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-secondary:hover{background:color-mix(in srgb,var(--panel-bg, #ffffff) 85%,var(--primary-light, #d1fae5));border-color:var(--primary, #10b981);color:var(--text-main, #111827)}.success-card{margin-top:24px;background:var(--success-bg);border:1px solid color-mix(in srgb,var(--primary, #10b981) 45%,#c7f9e9);border-radius:12px;padding:20px;animation:fadeIn .5s ease}.success-card h3{color:var(--success-text);margin-top:0}.credentials{background:#fff9;padding:16px;border-radius:8px;margin-top:12px;border:1px solid color-mix(in srgb,var(--primary, #10b981) 25%,transparent)}.credentials-item{display:flex;justify-content:space-between;margin-bottom:8px;font-size:.95rem}.credentials-label{color:#4b5563}.credentials-value{font-weight:700;color:#064e3b;font-family:monospace;font-size:1.1rem}.link-button{background:none;border:none;color:var(--primary);cursor:pointer;text-decoration:underline;font-size:inherit;padding:0;font-family:inherit}.link-button:hover{color:var(--primary-hover)}@media (max-width: 640px){.form-row{flex-direction:column;gap:16px}.panel-header{flex-direction:column;align-items:flex-start;gap:12px}.panel-actions{width:100%}.btn-secondary-ghost{width:100%;justify-content:center}.form-actions{flex-direction:column-reverse}.btn-primary,.btn-secondary{width:100%;justify-content:center}}.scrollable-wrapper{padding-top:68px;padding-left:2rem;padding-right:16px}.card-container{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:20px;margin-top:12px}.card-item{background:#ffffffb3;border:1px solid rgba(255,255,255,.8);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:16px;padding:20px;cursor:pointer;transition:all .25s ease;display:flex;flex-direction:column;gap:12px;box-shadow:0 8px 24px #0000000d}.card-item:hover:not(.coming-soon){transform:translateY(-4px);background:#fff;border-color:var(--admin-primary);box-shadow:0 12px 32px #10b98133}.card-icon-wrap{width:52px;height:52px;border-radius:14px;background:linear-gradient(135deg,#fff,#f0f0f0);color:var(--admin-primary);display:inline-flex;align-items:center;justify-content:center;transition:all .25s ease;box-shadow:0 4px 8px #0000000a;border:1px solid white}.card-item:hover:not(.coming-soon) .card-icon-wrap{background:var(--admin-primary);color:#fff;transform:scale(1.05) rotate(5deg);box-shadow:0 6px 12px #10b9814d}.card-icon{font-size:1.5rem}.card-label{margin:0;font-size:1.1rem;line-height:1.3;color:var(--admin-text-primary);font-weight:600}.card-description{margin:0;color:var(--admin-text-secondary);font-size:.9rem;line-height:1.5;flex-grow:1}.card-item.coming-soon{opacity:.6;background:#e6e6e680;cursor:default;box-shadow:none}.card-item.coming-soon:hover{transform:none;border-color:#fffc;box-shadow:none}.coming-soon-badge{align-self:flex-start;font-size:.7rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--admin-warning);background:#f59e0b1a;border:1px solid rgba(245,158,11,.2);border-radius:6px;padding:4px 10px}.info-banner{border-radius:14px;border:1px solid rgba(245,158,11,.3);background:#f59e0b14;color:#b45309;padding:14px;margin-bottom:16px;display:flex;align-items:flex-start;gap:12px}.info-banner i{font-size:1.1rem;margin-top:2px}.banner-title{margin:0;font-size:.9rem;font-weight:600}.banner-text{font-size:.875rem;margin-top:3px}.banner-close-btn{margin-left:auto;width:32px;height:32px;border-radius:10px;border:1px solid transparent;background:#f59e0b1a;color:#b45309;display:inline-flex;align-items:center;justify-content:center;font-size:1.1rem;cursor:pointer;transition:all .2s ease}.banner-close-btn:hover{background:#f59e0b33;color:#78350f}@media (max-width: 768px){.scrollable-wrapper{padding-top:60px;padding-left:12px;padding-right:12px}.card-container{grid-template-columns:1fr;gap:16px}}.admin-sidebar{position:fixed;top:0;left:0;bottom:0;width:280px;display:flex;flex-direction:column;background-color:#0d1a2a;background-image:linear-gradient(170deg,#0d1a2a,#1a2b41 70%,#1f3855);color:#e0e0e0;border-right:1px solid #2a3f5a;box-shadow:8px 0 40px -10px #00000080;z-index:1200;transform:translate(0);transition:transform .4s cubic-bezier(.25,.46,.45,.94);overflow:hidden}.admin-sidebar.collapsed{transform:translate(-100%)}.admin-sidebar-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0a141e99;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);z-index:1190;animation:fadeIn .3s ease}.admin-sidebar-top{padding:24px 20px;border-bottom:1px solid rgba(255,255,255,.1);background:#ffffff08;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 4px 15px #0003}.admin-info{display:flex;align-items:center;gap:16px}.admin-icon{width:50px;height:50px;border-radius:50%;background:linear-gradient(135deg,var(--admin-primary, #10b981),var(--admin-primary-dark, #059669));color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.8rem;box-shadow:0 5px 15px -3px #0000004d;border:2px solid rgba(255,255,255,.8)}.admin-details .admin-label{margin:0;font-size:.8rem;color:#ffffffb3;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.admin-details .admin-college{margin:4px 0 0;color:#fff;font-size:1rem;font-weight:700}.admin-sidebar-menu{list-style:none;margin:0;padding:20px 12px;display:flex;flex-direction:column;gap:8px;overflow-y:auto;flex:1}.admin-sidebar-item{display:flex;align-items:center;gap:16px;padding:14px 18px;border-radius:10px;color:#fffc;cursor:pointer;transition:all .25s ease;font-weight:600;font-size:.95rem;position:relative;border:1px solid transparent}.admin-sidebar-item .icon{font-size:1.2rem;transition:all .25s ease;width:24px;text-align:center}.admin-sidebar-item:hover{background:#ffffff1a;color:#fff;transform:translate(5px);border-color:#fff3}.admin-sidebar-item:hover .icon{transform:scale(1.1)}.admin-sidebar-item.active{background:var(--admin-primary, #10b981);color:#fff;font-weight:700;box-shadow:0 8px 20px -6px var(--admin-primary, #10b981)}.admin-sidebar-item.active:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:4px;height:60%;background-color:#fff;border-radius:0 4px 4px 0}.admin-sidebar-item.active .icon{animation:active-icon-anim .5s ease}@keyframes active-icon-anim{0%{transform:scale(1)}50%{transform:scale(1.3) rotate(10deg)}to{transform:scale(1)}}.admin-sidebar-item .badge{margin-left:auto;font-size:.7rem;font-weight:700;border-radius:6px;padding:4px 8px;background:#fff3;color:#fff}.admin-sidebar-item.coming-soon{opacity:.5;cursor:not-allowed}.admin-sidebar-item.coming-soon:hover{transform:none;background:transparent;border-color:transparent}@media (max-width: 768px){.admin-sidebar{width:min(85vw,320px);box-shadow:10px 0 50px -15px #0009;transform:translate(-105%)}.admin-sidebar.mobile.visible{transform:translate(0)}.admin-sidebar-header{display:flex;justify-content:flex-end;padding:12px}.admin-sidebar-close-btn{width:40px;height:40px;border-radius:10px;border:none;background:#ffffff1a;color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:1.3rem}}.admin-sidebar-menu::-webkit-scrollbar{width:5px}.admin-sidebar-menu::-webkit-scrollbar-track{background:transparent}.admin-sidebar-menu::-webkit-scrollbar-thumb{background:#fff3;border-radius:5px}.admin-sidebar-menu::-webkit-scrollbar-thumb:hover{background:#ffffff4d}.admin-sidebar-submenu{list-style:none;margin:4px 0 8px 24px;display:flex;flex-direction:column;gap:6px;border-left:1px solid rgba(255,255,255,.1);padding:0 0 0 12px}.admin-sidebar-subitem{display:flex;align-items:center;gap:12px;padding:8px 12px;border-radius:6px;color:#ffffffb3;cursor:pointer;transition:all .2s ease;font-weight:500;font-size:.9rem}.admin-sidebar-subitem:hover{background:#ffffff0d;color:#fff;transform:translate(3px)}.admin-sidebar-subitem.active{background:#10b98126;color:var(--admin-primary, #10b981);font-weight:700}.admin-page-header{position:fixed;top:0;left:280px;right:0;height:60px;display:flex;justify-content:space-between;align-items:center;padding:10px 16px;background:linear-gradient(90deg,var(--card-bg, #ffffff) 0%,rgba(255,255,255,.98) 100%);border-bottom:1px solid var(--border-color, #e5e7eb);box-shadow:0 4px 12px #00000014;z-index:1100}.app-container.sidebar-collapsed.admin-page .admin-page-header{left:0}.header-left,.header-right{display:flex;align-items:center;gap:10px}.header-left{min-width:0;flex:1;gap:10px}.mobile-menu-toggle{display:none;width:36px;height:36px;border-radius:8px;border:1px solid var(--border-color, #cbd5e1);background:var(--card-bg, #ffffff);color:var(--text-main, #1e293b);font-size:1.1rem;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease}.mobile-menu-toggle:hover{background:#fffc;border-color:var(--text-main, #1e293b)}.admin-page-titles{min-width:0}.admin-page-title{margin:0;font-size:1rem;color:var(--text-main, #0f172a);font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.2}.admin-page-subtitle{margin:1px 0 0;font-size:.75rem;color:var(--text-muted, #64748b);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1}.institution-brand{display:inline-flex;align-items:center;gap:8px}.institution-brand-logo{max-width:120px;max-height:38px;width:auto;height:auto;object-fit:contain;border-radius:6px;border:1px solid var(--border-color, #bfdbfe);flex-shrink:0}.institution-brand-fallback{width:26px;height:26px;border-radius:6px;border:1px solid var(--border-color, #bfdbfe);flex-shrink:0}.institution-brand-fallback{display:inline-flex;align-items:center;justify-content:center;background:#fff6;color:var(--primary-accent, #10b981);font-size:.65rem;font-weight:700;border:.5px solid rgba(0,0,0,.08)}.admin-user-info{display:inline-flex;align-items:center;gap:8px;padding:5px 9px;border-radius:8px;border:1px solid var(--border-color, #dbe5f1);background:var(--card-bg, #ffffff)}.user-avatar{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,var(--primary-accent, #10b981) 0%,var(--primary-accent-dark, #059669) 100%);color:var(--text-on-primary, #ffffff);display:inline-flex;align-items:center;justify-content:center;font-weight:700;font-size:.9rem;flex-shrink:0;box-shadow:0 2px 8px #0000001f}.user-details{display:flex;flex-direction:column;gap:0px}.user-name{font-size:.81rem;color:var(--text-main, #0f172a);font-weight:700;line-height:1}.user-role{font-size:.7rem;color:var(--text-muted, #64748b);line-height:1;margin-top:1px}.btn-logout{min-height:38px;border-radius:8px;border:1px solid rgba(239,68,68,.3);background:#ef44441a;color:#dc2626;font-size:.8rem;font-weight:700;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 12px;cursor:pointer;transition:all .2s ease;text-decoration:none}.btn-logout:hover{background:#ef444426;border-color:#ef444480;color:#b91c1c}@media (max-width: 768px){.admin-page-header{left:0;padding:8px;gap:0;justify-content:space-between;min-height:48px}.header-left{gap:6px;min-width:0;flex:0 1 auto;display:flex;align-items:center;flex-shrink:1}.mobile-menu-toggle{display:inline-flex!important;flex-shrink:0;z-index:1101;width:36px;height:36px;font-size:1rem;visibility:visible!important}.admin-page-titles{flex:0 1 auto;min-width:0;overflow:hidden;max-width:calc(100vw - 100px)}.admin-page-title{font-size:.8rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.admin-page-subtitle{display:none}.institution-brand{gap:3px;flex-shrink:0}.institution-brand-logo{max-width:60px;max-height:24px;width:auto;height:auto;object-fit:contain;flex-shrink:0}.institution-brand-fallback{width:18px;height:18px;flex-shrink:0}.admin-user-info{display:none}.header-right{flex-shrink:0;display:flex;align-items:center;margin-left:auto}.btn-logout{width:36px;height:36px;padding:0!important;border-radius:8px;flex-shrink:0;min-height:36px;font-size:.9rem}.btn-logout span{display:none}}.admin-content{--primary: var(--primary-accent, #3b82f6);--primary-hover: var(--primary-accent-dark, #2563eb);--primary-light: var(--primary-accent-light, #dbeafe);--bg-main: var(--bg-color, #f8fafc);--card-bg: var(--card-bg, #ffffff);--text-primary: var(--text-main, #0f172a);--text-secondary: var(--text-muted, #64748b);--border: var(--border-color, #e2e8f0);--danger: var(--danger-color, #ef4444);--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .05);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .1);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .1);--shadow-xl: 0 20px 25px -5px rgb(0 0 0 / .1)}.admin-content{padding:32px 32px 250px;background:var(--bg-main);min-height:100vh;box-sizing:border-box}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:32px;background:linear-gradient(135deg,var(--app-header-bg, var(--primary)) 0%,color-mix(in srgb,var(--primary) 85%,#000000) 100%);padding:40px 32px;border-radius:20px;box-shadow:var(--shadow-xl);position:relative;overflow:hidden}.page-header:before{content:"";position:absolute;top:0;right:0;width:300px;height:300px;background:radial-gradient(circle,rgba(255,255,255,.1) 0%,transparent 70%);border-radius:50%;transform:translate(30%,-30%)}.department-header-text{position:relative;z-index:1}.department-header-text h2{color:var(--text-on-primary, #ffffff);font-size:28px;font-weight:700;margin:0 0 8px;letter-spacing:-.5px}.department-header-text p{color:var(--text-on-primary, rgba(255, 255, 255, .9));font-size:15px;margin:0;opacity:.9;font-weight:500}.btn-primary{background:#fffffff2;color:var(--primary);border:2px solid transparent;padding:12px 24px;border-radius:12px;font-weight:600;font-size:15px;cursor:pointer;display:inline-flex;align-items:center;gap:10px;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 12px #00000026;position:relative;z-index:1}.btn-primary:hover{background:#fff;transform:translateY(-2px);box-shadow:0 8px 20px #0003}.btn-primary i{font-size:18px;font-weight:700}.btn-secondary{background:var(--card-bg);color:var(--text-primary);border:2px solid var(--border);padding:10px 20px;border-radius:12px;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;gap:8px;transition:all .2s ease}.btn-secondary:hover{border-color:var(--primary);color:var(--primary);background:var(--primary-light)}.btn-danger{background:var(--danger);color:#fff;border:none;padding:10px 20px;border-radius:12px;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-danger:hover{background:color-mix(in srgb,var(--danger) 85%,#000000);transform:translateY(-1px)}.btn-danger:disabled{opacity:.5;cursor:not-allowed}.departments-overview h3{font-size:20px;font-weight:700;color:var(--text-primary);margin-bottom:24px;display:flex;align-items:center;gap:12px}.departments-overview h3:before{content:"";width:4px;height:24px;background:linear-gradient(180deg,var(--primary) 0%,color-mix(in srgb,var(--primary) 70%,transparent) 100%);border-radius:2px}.search-section{margin-bottom:28px}.search-container{position:relative;max-width:450px}.search-container i{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:var(--text-secondary);font-size:18px}.search-input{width:100%;padding:14px 16px 14px 48px;border:2px solid var(--border);border-radius:14px;background:var(--card-bg);font-size:15px;color:var(--text-primary);transition:all .3s ease;box-shadow:var(--shadow-sm)}.search-input:focus{outline:none;border-color:var(--primary);background:#fff;box-shadow:0 0 0 4px color-mix(in srgb,var(--primary) 12%,transparent),var(--shadow-md)}.search-input::placeholder{color:var(--text-secondary)}.departments-grid-small{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:24px;animation:fadeIn .4s ease-out}.department-small-card{background:var(--card-bg);border:2px solid var(--border);border-radius:18px;padding:28px;cursor:pointer;transition:all .35s cubic-bezier(.4,0,.2,1);position:relative;display:flex;flex-direction:column;box-shadow:var(--shadow-sm);overflow:hidden}.department-small-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--primary) 0%,color-mix(in srgb,var(--primary) 70%,transparent) 100%);transform:scaleX(0);transform-origin:left;transition:transform .3s ease}.department-small-card:hover:before{transform:scaleX(1)}.department-small-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-xl);border-color:color-mix(in srgb,var(--primary) 30%,var(--border))}.department-small-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.department-small-icon{width:56px;height:56px;border-radius:14px;background:linear-gradient(135deg,var(--primary-light) 0%,color-mix(in srgb,var(--primary-light) 70%,white) 100%);color:var(--primary);display:flex;align-items:center;justify-content:center;font-size:26px;transition:all .35s ease;box-shadow:inset 0 1px 2px #0000000d}.department-small-card:hover .department-small-icon{background:linear-gradient(135deg,var(--primary) 0%,var(--primary-hover) 100%);color:var(--text-on-primary, #ffffff);transform:rotate(-8deg) scale(1.05);box-shadow:0 6px 16px color-mix(in srgb,var(--primary) 40%,transparent)}.department-small-code{background:var(--text-primary);color:var(--text-on-primary, #ffffff);font-size:12px;font-weight:700;padding:6px 12px;border-radius:8px;letter-spacing:.8px;text-transform:uppercase;box-shadow:var(--shadow-sm)}.department-small-content{flex-grow:1;margin-bottom:20px}.department-small-name{font-size:20px;font-weight:700;color:var(--text-primary);margin:0 0 8px;line-height:1.3;letter-spacing:-.3px}.department-small-meta{font-size:14px;color:var(--text-secondary);margin:0;display:flex;align-items:center;gap:6px}.department-small-meta:before{content:"•";color:var(--border);font-weight:700}.department-small-footer{padding-top:20px;border-top:2px solid var(--border);display:flex;justify-content:flex-end;transition:all .3s ease}.manage-link{font-size:15px;font-weight:600;color:var(--primary);display:flex;align-items:center;gap:8px;transition:all .2s ease}.manage-link:after{content:"→";font-size:18px;transition:transform .3s cubic-bezier(.4,0,.2,1)}.department-small-card:hover .manage-link{gap:12px}.department-small-card:hover .manage-link:after{transform:translate(4px)}.empty-state{text-align:center;padding:80px 40px;background:var(--card-bg);border-radius:20px;border:2px dashed var(--border);margin-top:20px}.empty-state-icon{font-size:64px;color:var(--text-secondary);margin-bottom:20px;opacity:.4}.empty-state h3{font-size:22px;color:var(--text-primary);margin:0 0 12px;font-weight:700}.empty-state p{color:var(--text-secondary);margin:0 0 28px;font-size:15px}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:2000;padding:20px;animation:fadeIn .2s ease-out}.modal-content{background:var(--card-bg);border-radius:20px;width:90%;max-width:540px;box-shadow:0 25px 50px -12px #00000040;overflow:hidden;animation:slideUp .3s cubic-bezier(.4,0,.2,1)}.modal-header{padding:24px 28px;border-bottom:2px solid var(--border);display:flex;justify-content:space-between;align-items:center;background:linear-gradient(180deg,var(--card-bg) 0%,color-mix(in srgb,var(--bg-main) 50%,white) 100%)}.modal-header h3{margin:0;font-size:20px;font-weight:700;color:var(--text-primary)}.modal-close{background:transparent;border:none;width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--text-secondary);transition:all .2s ease;font-size:24px}.modal-close:hover{background:var(--border);color:var(--text-primary)}.modal-body{padding:28px}.modal-footer{padding:20px 28px;background:color-mix(in srgb,var(--bg-main) 70%,white);display:flex;justify-content:flex-end;gap:12px;border-top:2px solid var(--border)}.delete-warning{display:flex;gap:16px;padding:20px;background:color-mix(in srgb,var(--danger) 8%,white);border-radius:12px;border-left:4px solid var(--danger);margin-bottom:24px}.delete-warning i{font-size:24px;color:var(--danger)}.delete-warning p{margin:0 0 8px;color:var(--text-primary);font-size:15px}.warning-text{color:var(--text-secondary);font-size:14px}.form-group label{display:block;margin-bottom:8px;font-weight:600;color:var(--text-primary);font-size:14px}.form-control{width:100%;padding:12px 16px;border:2px solid var(--border);border-radius:12px;font-size:15px;color:var(--text-primary);transition:all .2s ease;background:var(--card-bg);box-sizing:border-box}.form-control:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 4px color-mix(in srgb,var(--primary) 12%,transparent)}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 40px;color:var(--text-secondary)}.loading-spinner{width:48px;height:48px;border:4px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:20px}.loading-container p{font-size:15px;font-weight:500}@keyframes slideUp{0%{opacity:0;transform:translateY(30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@media (max-width: 1024px){.departments-grid-small{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}}@media (max-width: 768px){.admin-content{padding:20px 20px 180px}.page-header{flex-direction:column;align-items:flex-start;gap:20px;padding:32px 24px}.department-header-text h2{font-size:24px}.departments-grid-small{grid-template-columns:1fr;gap:16px}.btn-primary{width:100%;justify-content:center}.modal-content{width:95%}}@media (max-width: 480px){.department-small-card{padding:20px}.department-small-icon{width:48px;height:48px;font-size:22px}.department-small-name{font-size:18px}}.department-form{--df-primary: var(--primary-accent, #059669);--df-primary-dark: var(--primary-accent-dark, #047857);--df-primary-light: var(--primary-accent-light, #d1fae5);--df-secondary: var(--secondary-accent, #374151);--df-success: var(--success-color, #10b981);--df-warning: var(--warning-color, #f59e0b);--df-danger: var(--danger-color, #dc2626);--df-text-primary: var(--text-main, #111827);--df-text-secondary: var(--text-muted, #6b7280);--df-text-muted: color-mix(in srgb, var(--text-muted, #6b7280) 70%, #cbd5e1);--df-border: var(--border-color, #e5e7eb);--df-border-light: color-mix( in srgb, var(--border-color, #e5e7eb) 60%, #f3f4f6 );--df-bg: var(--bg-color, #f8fafc);--df-card: var(--card-bg, #ffffff);--df-shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--df-shadow-md: 0 4px 10px rgba(0, 0, 0, .08);--df-shadow-lg: 0 12px 30px rgba(0, 0, 0, .1);--transition-speed: .18s;--border-radius-sm: 6px;--border-radius-md: 8px;--border-radius-lg: 12px;--border-radius-xl: 16px;--focus-ring: 3px solid color-mix(in srgb, var(--df-primary, #059669) 20%, transparent);--max-form-width: 980px;--card-bg: var(--df-card);--primary-accent: var(--df-primary);--primary-accent-dark: var(--df-primary-dark);--primary-accent-light: var(--df-primary-light);--secondary-accent: var(--df-secondary);--success-color: var(--df-success);--warning-color: var(--df-warning);--danger-color: var(--df-danger);--text-color-primary: var(--df-text-primary);--text-color-secondary: var(--df-text-secondary);--text-color-muted: var(--df-text-muted);--border-color: var(--df-border);--border-color-light: var(--df-border-light);--bg-color: var(--df-bg);--shadow-sm: var(--df-shadow-sm);--shadow-md: var(--df-shadow-md);--shadow-lg: var(--df-shadow-lg)}@media (prefers-reduced-motion: reduce){:root{--transition-speed: 0ms}.form-card,.card-animate{transition:none!important;animation:none!important}}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.department-form{max-width:var(--max-form-width);margin:0 auto;padding:20px;box-sizing:border-box}.form-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-sm);overflow:hidden;color:var(--text-color-primary)}.form-header{display:flex;gap:16px;align-items:center;padding:20px;background:linear-gradient(135deg,var(--primary-accent-light) 0%,var(--bg-color) 100%);border-bottom:1px solid var(--border-color-light)}.form-icon{width:48px;height:48px;min-width:48px;border-radius:var(--border-radius-md);display:grid;place-items:center;color:var(--text-on-primary, #fff);background:linear-gradient(180deg,var(--primary-accent),var(--primary-accent-dark));font-size:1.25rem;box-shadow:var(--shadow-sm)}.form-title{margin:0;font-size:1.25rem;font-weight:700;color:var(--text-color-primary)}.form-description{margin:0;color:var(--text-color-secondary);font-size:.9rem}.form-progress{display:flex;gap:16px;align-items:center;justify-content:center;padding:18px;background:var(--card-bg);border:1px solid var(--border-color);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-sm);margin-bottom:24px;flex-wrap:wrap}.progress-step{display:flex;flex-direction:column;align-items:center;gap:8px;color:var(--text-color-muted);transition:color var(--transition-speed) ease,transform var(--transition-speed) ease;transform-origin:center}.progress-step[aria-current=step],.progress-step.active{color:var(--text-color-primary);transform:translateY(-3px) scale(1.02)}.step-number{width:40px;height:40px;display:grid;place-items:center;border-radius:999px;font-weight:700;background:var(--border-color-light);color:var(--text-color-secondary);font-size:.9rem;transition:background var(--transition-speed) ease,color var(--transition-speed) ease}.progress-step[aria-current=step] .step-number,.progress-step.active .step-number{background:linear-gradient(180deg,var(--primary-accent),var(--primary-accent-dark));color:var(--text-on-primary, #fff)}.step-label{font-size:.75rem;text-align:center;color:inherit}.progress-line{width:64px;height:2px;background:var(--border-color-light);border-radius:2px}.form-progress.vertical{flex-direction:column}.form-progress.vertical .progress-line{width:2px;height:40px}.form-grid{display:grid;gap:20px;grid-template-columns:repeat(2,minmax(0,1fr));padding:22px}@media (max-width: 880px){.form-grid{grid-template-columns:1fr;padding:16px}}.form-field{display:flex;flex-direction:column;gap:6px;position:relative}.form-field label{font-weight:600;color:var(--text-color-primary);font-size:.9rem;display:flex;gap:6px;align-items:center}.required{color:var(--danger-color);font-weight:700;font-size:.9rem}.input-wrapper{position:relative;display:block}.form-field input[type=text],.form-field input[type=email],.form-field input[type=number],.form-field input[type=search],.form-field textarea,.form-field select{width:100%;padding:12px 14px;border:1.5px solid var(--border-color);border-radius:var(--border-radius-md);background:var(--card-bg, #ffffff);font-size:.95rem;color:var(--text-color-primary);transition:box-shadow var(--transition-speed) ease,border-color var(--transition-speed) ease,transform var(--transition-speed) ease;box-sizing:border-box;font-family:inherit}.form-field textarea{min-height:110px;resize:vertical}.form-field:focus-within{outline:none}.form-field input:focus,.form-field textarea:focus,.form-field select:focus{box-shadow:var(--focus-ring);border-color:var(--primary-accent);outline:none}.form-field .is-valid{border-color:var(--success-color)!important;box-shadow:0 0 0 4px #10b9810f}.form-field .is-invalid{border-color:var(--danger-color)!important;box-shadow:0 0 0 4px #dc26260f}.input-icon{position:absolute;right:12px;top:50%;transform:translateY(-50%);pointer-events:none;font-size:1rem;color:var(--text-color-muted)}.input-icon.invalid{color:var(--danger-color)}.field-error{display:flex;gap:6px;align-items:center;color:var(--danger-color);font-size:.82rem;font-weight:600;margin-top:6px}.field-hint{color:var(--text-color-muted);font-size:.82rem;display:flex;gap:6px;align-items:center}.field-hint:before{content:"ℹ️";font-size:.85rem;opacity:.8}.form-field:focus-within .field-hint{color:var(--primary-accent)}.form-field input[name=code]{text-transform:uppercase;font-family:Courier New,monospace;letter-spacing:.8px}.form-field input[type=text].capitalize{text-transform:capitalize}.file-dropzone{border:1.5px dashed var(--border-color);border-radius:var(--border-radius-md);padding:12px;display:flex;gap:12px;align-items:center;justify-content:space-between;background:linear-gradient(180deg,color-mix(in srgb,var(--card-bg, #ffffff) 70%,transparent),color-mix(in srgb,var(--bg-color, #f8fafc) 60%,transparent));transition:border-color var(--transition-speed) ease,box-shadow var(--transition-speed) ease,background var(--transition-speed) ease}.file-dropzone .dz-info{color:var(--text-color-secondary);font-size:.92rem}.file-dropzone.dragover{border-color:var(--primary-accent);box-shadow:0 8px 20px #0596690f;background:linear-gradient(180deg,color-mix(in srgb,var(--primary-accent-light, #d1fae5) 45%,transparent),color-mix(in srgb,var(--card-bg, #ffffff) 80%,transparent))}.file-preview{display:flex;gap:10px;align-items:center}.file-preview .thumb{width:56px;height:56px;border-radius:8px;overflow:hidden;background:var(--border-color-light);display:grid;place-items:center}.file-preview .meta{font-size:.85rem;color:var(--text-color-secondary)}.chips{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.chip{background:color-mix(in srgb,var(--bg-color, #f8fafc) 70%,var(--card-bg, #ffffff));color:var(--text-color-secondary);padding:6px 10px;border-radius:999px;font-weight:600;display:inline-flex;align-items:center;gap:8px;font-size:.85rem}.chip .remove{cursor:pointer;opacity:.75;font-weight:700}.chip .remove:hover{opacity:1}.form-preview{padding:18px;background:var(--bg-color);border:1px solid var(--border-color-light);border-radius:var(--border-radius-md);margin-bottom:20px}.preview-card{display:flex;gap:12px;align-items:flex-start;background:var(--card-bg);padding:14px;border:1px solid var(--border-color);border-radius:var(--border-radius-md);box-shadow:var(--shadow-sm)}.preview-icon{width:44px;height:44px;border-radius:var(--border-radius-sm);background:linear-gradient(180deg,var(--primary-accent),var(--primary-accent-dark));color:var(--text-on-primary, #fff);display:grid;place-items:center;font-weight:700}.preview-content{flex:1}.preview-name{font-weight:700;color:var(--text-color-primary);margin:0 0 6px}.preview-code{font-size:.72rem;padding:4px 8px;border-radius:8px;background:var(--primary-accent);color:var(--text-on-primary, #fff);font-weight:700;letter-spacing:.6px}.preview-meta{display:flex;gap:12px;align-items:center;color:var(--text-color-secondary);font-size:.82rem}.form-actions{display:flex;justify-content:flex-end;gap:12px;padding:18px;border-top:1px solid var(--border-color-light);background:linear-gradient(180deg,rgba(255,255,255,.03),transparent)}.btn-primary{background:linear-gradient(180deg,var(--primary-accent),var(--primary-accent-dark));color:var(--text-on-primary, #fff);padding:10px 16px;border-radius:var(--border-radius-md);border:none;font-weight:700;cursor:pointer;box-shadow:var(--shadow-sm);transition:transform var(--transition-speed) ease,box-shadow var(--transition-speed) ease}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:var(--shadow-md)}.btn-secondary{background:var(--card-bg, #ffffff);border:1.5px solid var(--border-color);color:var(--text-color-secondary);padding:10px 16px;border-radius:var(--border-radius-md);cursor:pointer;font-weight:700}.btn-primary:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}.loading-spinner{width:18px;height:18px;border:2px solid var(--border-color-light);border-top:2px solid var(--primary-accent);border-radius:50%;animation:spin .9s linear infinite;display:inline-block}@media (max-width: 640px){.form-card{border-radius:var(--border-radius-md)}.form-header{padding:16px;gap:12px}.form-grid{gap:14px;padding:14px}.form-actions{padding:14px;flex-direction:column-reverse;gap:10px;align-items:stretch}.form-actions .btn-primary,.form-actions .btn-secondary{width:100%;justify-content:center}.form-progress{padding:12px;gap:12px}.form-progress.vertical{gap:8px}}.helper{color:var(--text-color-secondary);font-size:.9rem}.is-hidden{display:none!important}.tab-button{flex:1;display:flex;align-items:center;justify-content:center;gap:var(--admin-space-md);padding:var(--admin-space-md) var(--admin-space-lg);border:none;background:transparent;color:var(--admin-text-secondary);font-weight:var(--admin-font-semibold);font-size:var(--admin-text-sm);cursor:pointer;border-radius:var(--admin-radius-md);transition:all .2s ease}.tab-button.active{background:var(--admin-primary);color:var(--admin-text-on-primary)}.search-box{position:relative;flex:1;min-width:200px}.search-box input{width:100%;padding:var(--admin-space-md) var(--admin-space-lg);padding-left:40px;border:1px solid var(--admin-border);border-radius:var(--admin-radius-md);font-size:var(--admin-text-sm);background:var(--admin-bg-secondary);color:var(--admin-text-primary);transition:all .2s ease}.search-box input:focus{outline:none;border-color:var(--admin-primary);box-shadow:0 0 0 3px var(--admin-primary-light)}.search-icon{position:absolute;left:var(--admin-space-lg);top:50%;transform:translateY(-50%);color:var(--admin-text-tertiary);pointer-events:none}.staff-table-wrapper{background:var(--admin-bg-card);border-radius:var(--admin-radius-lg);border:1px solid var(--admin-border);overflow:hidden;box-shadow:var(--admin-shadow-sm);margin-bottom:var(--admin-space-xl)}.staff-table{width:100%;border-collapse:collapse;font-size:var(--admin-text-sm)}.staff-table thead{background:var(--admin-bg-secondary);border-bottom:1px solid var(--admin-border)}.staff-table th{padding:var(--admin-space-lg);text-align:left;font-weight:var(--admin-font-semibold);color:var(--admin-text-primary);white-space:nowrap}.staff-table td{padding:var(--admin-space-lg);border-bottom:1px solid var(--admin-border-light)}.staff-table tbody tr:hover{background:var(--admin-bg-secondary)}.staff-table tbody tr:last-child td{border-bottom:none}.staff-name{font-weight:var(--admin-font-semibold);color:var(--admin-text-primary)}.staff-role{font-size:var(--admin-text-xs);color:var(--admin-text-secondary);display:block}.staff-status{display:inline-block;padding:var(--admin-space-xs) var(--admin-space-md);border-radius:12px;font-size:var(--admin-text-xs);font-weight:var(--admin-font-semibold);text-transform:capitalize}.staff-status.active{background:#ecfdf5;color:#047857}.staff-status.inactive{background:#fef2f2;color:#991b1b}.action-btn{padding:var(--admin-space-sm) var(--admin-space-md);background:var(--admin-bg-secondary);border:1px solid var(--admin-border);border-radius:var(--admin-radius-sm);color:var(--admin-text-primary);cursor:pointer;font-size:var(--admin-text-xs);transition:all .2s ease;display:inline-flex;align-items:center;gap:var(--admin-space-xs);font-weight:var(--admin-font-semibold)}.action-btn.danger:hover{background:#fef2f2;border-color:var(--admin-danger);color:var(--admin-danger)}.action-btn.delete{color:var(--admin-danger)}.staff-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--admin-space-lg);margin-bottom:var(--admin-space-xl)}.staff-card{background:var(--admin-bg-card);border:1px solid var(--admin-border);border-radius:var(--admin-radius-lg);padding:var(--admin-space-lg);display:flex;flex-direction:column;gap:var(--admin-space-md);transition:all .2s ease;box-shadow:var(--admin-shadow-sm)}.staff-card:hover{transform:translateY(-4px);box-shadow:var(--admin-shadow-md);border-color:var(--admin-primary)}.staff-card-header{display:flex;align-items:flex-start;gap:var(--admin-space-md)}.staff-avatar{width:48px;height:48px;border-radius:50%;background:var(--admin-primary-light);color:var(--admin-primary);display:flex;align-items:center;justify-content:center;font-weight:var(--admin-font-bold);font-size:var(--admin-text-base);flex-shrink:0}.staff-info h3{margin:0 0 var(--admin-space-xs) 0;font-size:var(--admin-text-base);font-weight:var(--admin-font-semibold);color:var(--admin-text-primary)}.staff-detail{font-size:var(--admin-text-xs);color:var(--admin-text-secondary);margin:var(--admin-space-xs) 0 0 0}.staff-card-actions{display:flex;gap:var(--admin-space-sm);padding-top:var(--admin-space-md);border-top:1px solid var(--admin-border-light)}.staff-card-actions button{flex:1;padding:var(--admin-space-sm) var(--admin-space-md);font-size:var(--admin-text-xs)}.info-card{background:var(--admin-bg-card);border:1px solid var(--admin-border);border-radius:var(--admin-radius-lg);padding:var(--admin-space-lg);display:flex;gap:var(--admin-space-lg);align-items:center}.info-card-icon{width:56px;height:56px;border-radius:var(--admin-radius-md);background:var(--admin-primary-light);color:var(--admin-primary);display:flex;align-items:center;justify-content:center;font-size:1.5rem;flex-shrink:0}.info-card-content h3{margin:0 0 var(--admin-space-xs) 0;font-size:var(--admin-text-base);font-weight:var(--admin-font-semibold);color:var(--admin-text-primary)}.info-card-content p{margin:0;font-size:var(--admin-text-sm);color:var(--admin-text-secondary)}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal{background:var(--admin-bg-card);border-radius:var(--admin-radius-lg);box-shadow:var(--admin-shadow-xl);max-width:500px;width:90%;max-height:90vh;overflow-y:auto}@media (max-width: 768px){.staff-cards{grid-template-columns:1fr}.staff-table{font-size:var(--admin-text-xs)}.staff-table th,.staff-table td{padding:var(--admin-space-md)}.modal{width:95%}}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--admin-space-2xl);padding:var(--admin-space-xl);background:linear-gradient(135deg,var(--admin-primary) 0%,var(--admin-primary-dark) 100%);border-radius:var(--admin-radius-lg);box-shadow:var(--admin-shadow-lg);flex-wrap:wrap;gap:var(--admin-space-lg);position:relative;overflow:hidden}.header-left{display:flex;align-items:center;gap:var(--admin-space-lg);position:relative;z-index:1}.btn-back{width:44px;height:44px;border-radius:var(--admin-radius-md);border:2px solid rgba(255,255,255,.3);background:#ffffff26;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--admin-text-on-primary);transition:all .3s ease;font-size:1.2rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.btn-back:hover{background:#ffffff40;transform:translate(-3px);border-color:#ffffff80}.page-header h2{margin:0;font-size:var(--admin-text-2xl);color:var(--admin-text-on-primary);font-weight:var(--admin-font-bold)}.department-code{margin:var(--admin-space-sm) 0 0 0;color:#ffffffe6;font-size:var(--admin-text-sm);opacity:.9;font-weight:var(--admin-font-medium)}.header-actions{display:flex;gap:var(--admin-space-md);position:relative;z-index:1;flex-wrap:wrap}.search-container{position:relative;flex:1;min-width:250px}.search-input{width:100%;padding:var(--admin-space-md) var(--admin-space-lg);padding-left:40px;border:1px solid rgba(255,255,255,.3);border-radius:var(--admin-radius-md);font-size:var(--admin-text-sm);background:#ffffff26;color:var(--admin-text-on-primary);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all .2s ease;font-family:var(--admin-font-family)}.search-input::placeholder{color:#ffffffb3}.search-input:focus{outline:none;background:#ffffff40;border-color:#ffffff80;box-shadow:0 0 0 3px #ffffff1a}.search-icon{position:absolute;left:var(--admin-space-lg);top:50%;transform:translateY(-50%);color:#ffffffb3;pointer-events:none}.btn-secondary{padding:var(--admin-space-md) var(--admin-space-lg);background:#fff3;border:1px solid rgba(255,255,255,.3);color:var(--admin-text-on-primary);border-radius:var(--admin-radius-md);cursor:pointer;font-weight:var(--admin-font-semibold);transition:all .2s ease;display:inline-flex;align-items:center;gap:var(--admin-space-sm);font-size:var(--admin-text-sm);font-family:var(--admin-font-family);border:none;white-space:nowrap}.btn-secondary:hover{background:#ffffff59;border-color:#ffffff80;transform:translateY(-2px)}.view-tabs{display:flex;background:var(--admin-bg-card);border-radius:var(--admin-radius-lg);padding:var(--admin-space-sm);margin-bottom:var(--admin-space-xl);border:1px solid var(--admin-border);box-shadow:var(--admin-shadow-sm);gap:var(--admin-space-sm)}.tab-button{flex:1;display:flex;align-items:center;justify-content:center;gap:var(--admin-space-md);padding:var(--admin-space-md) var(--admin-space-lg);border:none;background:transparent;color:var(--admin-text-secondary);font-weight:var(--admin-font-semibold);font-size:var(--admin-text-sm);cursor:pointer;border-radius:var(--admin-radius-md);transition:all .2s ease;font-family:var(--admin-font-family)}.tab-button:hover{background:var(--admin-bg-secondary);color:var(--admin-text-primary)}.tab-button.active{background:var(--admin-primary);color:var(--admin-text-on-primary);box-shadow:var(--admin-shadow-sm)}.stat-card:hover{transform:translateY(-3px);box-shadow:var(--admin-shadow-md);border-color:var(--admin-primary)}.faculty-section{margin-bottom:var(--admin-space-2xl)}.faculty-section h3{font-size:var(--admin-text-lg);font-weight:var(--admin-font-bold);color:var(--admin-text-primary);margin:0 0 var(--admin-space-lg) 0;display:flex;align-items:center;gap:var(--admin-space-md)}.faculty-section h3:before{content:"";width:4px;height:20px;background:linear-gradient(180deg,var(--admin-primary) 0%,transparent 100%);border-radius:2px}.faculty-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--admin-space-lg)}.faculty-grid.compact{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}.faculty-card{background:var(--admin-bg-card);border:1px solid var(--admin-border);border-radius:var(--admin-radius-lg);padding:var(--admin-space-lg);display:flex;flex-direction:column;gap:var(--admin-space-md);transition:all .2s ease;box-shadow:var(--admin-shadow-sm);cursor:pointer;position:relative;overflow:hidden}.faculty-card:before{content:"";position:absolute;top:0;left:0;width:100%;height:3px;background:linear-gradient(90deg,var(--admin-primary) 0%,transparent 100%);transform:scaleX(0);transform-origin:left;transition:transform .3s ease}.faculty-card:hover:before{transform:scaleX(1)}.faculty-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--admin-space-md)}.faculty-avatar{width:48px;height:48px;border-radius:50%;background:var(--admin-primary-light);color:var(--admin-primary);display:flex;align-items:center;justify-content:center;font-size:1.5rem;flex-shrink:0;font-weight:var(--admin-font-bold)}.faculty-actions{display:flex;gap:var(--admin-space-xs)}.action-btn{width:36px;height:36px;border-radius:var(--admin-radius-sm);border:1px solid var(--admin-border);background:var(--admin-bg-secondary);color:var(--admin-text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;font-size:.9rem}.action-btn:hover{background:var(--admin-primary-light);border-color:var(--admin-primary);color:var(--admin-primary)}.action-btn.remove-btn:hover{background:#fef2f2;border-color:var(--admin-danger);color:var(--admin-danger)}.faculty-content{display:flex;flex-direction:column;gap:var(--admin-space-xs)}.faculty-name{margin:0;font-size:var(--admin-text-base);font-weight:var(--admin-font-semibold);color:var(--admin-text-primary)}.faculty-employee-id{margin:0;font-size:var(--admin-text-xs);color:var(--admin-text-secondary);font-weight:var(--admin-font-medium);font-family:Courier New,monospace}.faculty-email{margin:0;font-size:var(--admin-text-xs);color:var(--admin-text-tertiary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.staff-type-badge{display:inline-block;padding:var(--admin-space-xs) var(--admin-space-md);border-radius:12px;font-size:var(--admin-text-xs);font-weight:var(--admin-font-semibold);text-transform:capitalize;width:fit-content;margin-top:var(--admin-space-xs)}.staff-type-badge.faculty{background:#eff6ff;color:#1e40af}.staff-type-badge.office{background:#fef3c7;color:#92400e}.empty-state{text-align:center;padding:var(--admin-space-2xl);background:var(--admin-bg-card);border:2px dashed var(--admin-border);border-radius:var(--admin-radius-lg)}.empty-state-icon{font-size:3.5rem;margin-bottom:var(--admin-space-lg);opacity:.5;color:var(--admin-text-secondary)}.empty-state h3,.empty-state h4{margin:0 0 var(--admin-space-md) 0;color:var(--admin-text-primary);font-size:var(--admin-text-lg)}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:2500;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.modal-content{background:var(--admin-bg-card);border-radius:var(--admin-radius-lg);box-shadow:var(--admin-shadow-xl);max-width:600px;width:90%;max-height:85vh;overflow-y:auto;display:flex;flex-direction:column;animation:slideUp .3s ease}.modal-header h3{margin:0;font-size:var(--admin-text-lg);color:var(--admin-text-primary);font-weight:var(--admin-font-bold)}.modal-close{width:36px;height:36px;border:none;background:var(--admin-bg-secondary);border-radius:var(--admin-radius-sm);color:var(--admin-text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;font-size:1.2rem}.modal-close:hover{background:#fef2f2;color:var(--admin-danger)}.modal-body{padding:var(--admin-space-xl);flex:1;overflow-y:auto}.modal-footer{padding:var(--admin-space-xl);border-top:1px solid var(--admin-border);display:flex;gap:var(--admin-space-md);justify-content:flex-end;background:var(--admin-bg-secondary)}.form-group label{font-weight:var(--admin-font-semibold);font-size:var(--admin-text-sm);color:var(--admin-text-primary)}.form-control,select{width:100%;padding:var(--admin-space-md) var(--admin-space-lg);border:1px solid var(--admin-border);border-radius:var(--admin-radius-md);font-size:var(--admin-text-sm);background:var(--admin-bg-main);color:var(--admin-text-primary);font-family:var(--admin-font-family);transition:all .2s ease}.form-control:focus,select:focus{outline:none;border-color:var(--admin-primary);box-shadow:0 0 0 3px var(--admin-primary-light)}.loading-container{text-align:center;padding:var(--admin-space-2xl);display:flex;flex-direction:column;align-items:center;gap:var(--admin-space-lg)}.loading-spinner{width:48px;height:48px;border:4px solid var(--admin-primary-light);border-top:4px solid var(--admin-primary);border-radius:50%;animation:spin 1s linear infinite}@media (max-width: 768px){.page-header{flex-direction:column;align-items:flex-start;padding:var(--admin-space-lg)}.header-actions{width:100%;flex-direction:column}.search-container{width:100%;min-width:auto}.btn-secondary{width:100%;justify-content:center}.stats-grid,.faculty-grid,.faculty-grid.compact{grid-template-columns:1fr}.modal-content{width:95%;max-height:90vh}.view-tabs{flex-direction:column}.tab-button{width:100%}}@media (max-width: 640px){.page-header h2{font-size:var(--admin-text-xl)}.department-code{font-size:var(--admin-text-xs)}.faculty-section h3{font-size:var(--admin-text-base)}.modal-header,.modal-body,.modal-footer{padding:var(--admin-space-lg)}}.faculty-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172aa6;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:2500;display:flex;align-items:center;justify-content:center;padding:24px}.faculty-modal-container{background:var(--card-bg, #ffffff);border:1px solid var(--border-color, #e2e8f0);border-radius:20px;width:100%;max-width:750px;max-height:90vh;box-shadow:0 25px 50px -12px #00000026;display:flex;flex-direction:column;overflow:hidden;animation:modalSlideUp .3s cubic-bezier(.16,1,.3,1)}@keyframes modalSlideUp{0%{transform:translateY(24px);opacity:0}to{transform:translateY(0);opacity:1}}.faculty-modal-header{padding:20px 28px;border-bottom:1px solid var(--border-color, #e2e8f0);display:flex;align-items:center;justify-content:space-between}.faculty-modal-header h2{margin:0;font-size:1.3rem;font-weight:700;color:var(--text-main, #0f172a)}.faculty-modal-close-btn{background:transparent;border:none;font-size:1.25rem;color:var(--text-muted, #64748b);cursor:pointer;width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .2s}.faculty-modal-close-btn:hover{background:var(--muted-surface, #f1f5f9);color:var(--text-main, #0f172a);transform:rotate(90deg)}.faculty-modal-body{padding:28px;overflow-y:auto;flex:1;display:flex;flex-direction:column;gap:20px}.faculty-modal-footer{padding:20px 28px;border-top:1px solid var(--border-color, #e2e8f0);background:var(--table-header, #f8fafc);display:flex;justify-content:flex-end;gap:12px}.dept-select-group{display:flex;flex-direction:column;gap:8px}.dept-select-group label{font-weight:600;font-size:.9rem;color:var(--text-main, #334155)}.dept-select-group select{padding:10px 14px;border:1px solid var(--border-color, #cbd5e1);border-radius:8px;background-color:var(--card-bg, #ffffff);color:var(--text-main, #0f172a);font-size:.95rem;transition:border-color .2s,box-shadow .2s}.dept-select-group select:focus{border-color:var(--primary, #10b981);box-shadow:0 0 0 3px #10b98126;outline:none}.already-uploaded-banner{background:#fffbeb;border:1px solid #fef3c7;border-left:4px solid #f59e0b;border-radius:8px;padding:14px 18px;display:flex;align-items:flex-start;gap:12px;animation:fadeIn .3s ease}.already-uploaded-banner-icon{font-size:1.25rem;color:#d97706;margin-top:1px}.already-uploaded-banner-text{font-size:.88rem;color:#b45309;line-height:1.45;margin:0}.template-bar{display:flex;justify-content:space-between;align-items:center;background:var(--muted-surface, #f8fafc);border:1px solid var(--border-color, #e2e8f0);border-radius:10px;padding:14px 20px}.template-bar-info{display:flex;align-items:center;gap:12px}.template-bar-icon{font-size:1.5rem;color:#10b981}.template-bar-title{font-weight:600;font-size:.88rem;color:var(--text-main, #1e293b);margin:0 0 2px}.template-bar-desc{font-size:.78rem;color:var(--text-muted, #64748b);margin:0}.btn-download-template{background:transparent;border:1px solid var(--primary, #10b981);color:var(--primary, #10b981);padding:6px 12px;border-radius:6px;font-size:.82rem;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:6px;transition:all .2s}.btn-download-template:hover{background:var(--primary-light, #ecfdf5);transform:translateY(-1px)}.faculty-dropzone{border:2px dashed var(--border-color, #cbd5e1);border-radius:12px;padding:36px 20px;text-align:center;cursor:pointer;transition:all .22s ease-in-out;background:var(--card-bg, #ffffff)}.faculty-dropzone:hover:not(.disabled){border-color:var(--primary, #10b981);background:var(--primary-light, #f0fdf4)}.faculty-dropzone.active{border-color:var(--primary, #10b981);background:var(--primary-light, #f0fdf4)}.faculty-dropzone.disabled{background:var(--muted-surface, #f8fafc);opacity:.6;cursor:not-allowed}.dropzone-inner-icon{font-size:2.2rem;color:var(--text-muted, #94a3b8);margin-bottom:12px}.faculty-dropzone.active .dropzone-inner-icon{color:var(--primary, #10b981)}.dropzone-main-text{font-weight:600;font-size:.95rem;color:var(--text-main, #334155);margin:0 0 6px}.dropzone-sub-text{font-size:.78rem;color:var(--text-muted, #64748b);margin:0}.dropzone-filename-badge{display:inline-flex;align-items:center;gap:8px;background:var(--primary-light, #ecfdf5);color:var(--primary, #047857);padding:6px 14px;border-radius:20px;font-size:.85rem;font-weight:600;margin-top:4px}.scrollable-preview-container{max-height:240px;overflow-y:auto;border:1px solid var(--border-color, #e2e8f0);border-radius:8px;background:var(--card-bg, #ffffff)}.scrollable-preview-container table{width:100%;border-collapse:collapse;font-size:.85rem}.scrollable-preview-container th{background:var(--table-header, #f8fafc);position:sticky;top:0;z-index:10;padding:10px 14px;text-align:left;border-bottom:1px solid var(--border-color, #e2e8f0);color:var(--text-muted, #64748b);font-weight:600}.scrollable-preview-container td{padding:10px 14px;border-bottom:1px solid var(--border-color, #f1f5f9);color:var(--text-main, #1e293b)}.scrollable-preview-container tr:last-child td{border-bottom:none}.upload-status-alert{padding:12px 16px;border-radius:8px;font-size:.88rem;display:flex;align-items:center;gap:10px}.upload-status-alert.error{background:#fef2f2;border:1px solid #fecaca;color:#b91c1c}.upload-status-alert.success{background:#f0fdf4;border:1px solid #bbf7d0;color:#15803d}.credentials-top-row{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px}.credentials-top-row h3{margin:0;font-size:1rem;font-weight:700;color:#15803d}.credentials-actions-group{display:flex;gap:8px}.btn-credentials-action{background:var(--card-bg, #ffffff);border:1px solid var(--border-color, #cbd5e1);color:var(--text-main, #334155);padding:6px 12px;border-radius:6px;font-size:.8rem;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:6px;transition:all .2s}.btn-credentials-action:hover{background:var(--muted-surface, #f8fafc);border-color:var(--text-muted, #94a3b8)}.btn-credentials-action.primary-pdf{border-color:#ef4444;color:#dc2626;background:#fef2f2}.btn-credentials-action.primary-pdf:hover{background:#fee2e2}code.faculty-cred-code{background:#f1f5f9;padding:2px 6px;border-radius:4px;font-family:monospace;font-size:.85rem;color:#0f172a}.course-add-card{background:var(--admin-bg-card);border:1px solid var(--admin-border);border-radius:var(--admin-radius-lg);padding:var(--admin-space-xl);box-shadow:var(--admin-shadow-sm);margin-bottom:var(--admin-space-2xl)}.course-add-title{font-weight:var(--admin-font-semibold);color:var(--admin-text-primary);margin-bottom:var(--admin-space-md)}.course-add-row{display:flex;gap:var(--admin-space-md);flex-wrap:wrap}.course-add-row input{flex:1 1 240px;padding:10px 12px;border:1px solid var(--admin-border);border-radius:var(--admin-radius-md);font-family:var(--admin-font-family)}.course-add-row select{flex:1 1 180px;padding:10px 12px;border:1px solid var(--admin-border);border-radius:var(--admin-radius-md);font-family:var(--admin-font-family);background:#fff}.course-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--admin-space-xl)}.course-card{background:#fff;border:1px solid var(--admin-border);border-radius:var(--admin-radius-lg);padding:var(--admin-space-xl);box-shadow:var(--admin-shadow-md);transition:transform .2s ease,box-shadow .2s ease}.course-card:hover{transform:translateY(-2px);box-shadow:var(--admin-shadow-lg)}.course-card-header{display:flex;flex-direction:column;gap:var(--admin-space-md);margin-bottom:var(--admin-space-lg);padding-bottom:var(--admin-space-md);border-bottom:1px solid var(--admin-border-light)}.course-card-header h3{margin:0;font-size:var(--admin-text-xl);font-weight:var(--admin-font-bold);color:var(--admin-text-primary)}.course-meta{margin:0;font-size:var(--admin-text-sm);color:var(--admin-text-secondary);font-weight:var(--admin-font-medium)}.course-card-header input{padding:8px 10px;border-radius:var(--admin-radius-md);border:1px solid var(--admin-border)}.course-edit-grid{display:grid;gap:var(--admin-space-sm)}.course-edit-grid select{padding:8px 10px;border-radius:var(--admin-radius-md);border:1px solid var(--admin-border);background:#fff}.course-actions,.division-actions{display:flex;gap:var(--admin-space-sm);flex-wrap:wrap;align-items:center}.btn-ghost{background:#fff;border:1px solid var(--admin-border);color:var(--admin-text-primary);padding:8px 12px;border-radius:var(--admin-radius-md);font-weight:var(--admin-font-medium)}.btn-ghost:hover{background:var(--admin-bg-secondary);border-color:var(--admin-primary);color:var(--admin-primary-dark)}.btn-danger-outline{background:#ef444414;border:1px solid rgba(239,68,68,.45);color:#ef4444;padding:8px 12px;border-radius:var(--admin-radius-md);font-weight:var(--admin-font-semibold)}.btn-danger-outline:hover{background:#ef444424;border-color:#ef4444bf}.division-section{border-top:1px solid var(--admin-border-light);padding-top:var(--admin-space-md)}.division-header{font-weight:var(--admin-font-semibold);margin-bottom:var(--admin-space-sm);color:var(--admin-text-secondary)}.division-list{list-style:none;padding:0;margin:0 0 var(--admin-space-md) 0;display:flex;flex-direction:column;gap:var(--admin-space-sm)}.division-item{display:flex;justify-content:space-between;align-items:center;gap:var(--admin-space-sm);padding:10px 12px;border-radius:var(--admin-radius-md);background:#f8fafc;border:1px solid var(--admin-border-light)}.division-item input{flex:1 1 auto;padding:6px 8px;border-radius:var(--admin-radius-md);border:1px solid var(--admin-border)}.division-add-row{display:flex;gap:var(--admin-space-sm);flex-wrap:wrap}.division-add-row input{flex:1 1 180px;padding:8px 10px;border-radius:var(--admin-radius-md);border:1px solid var(--admin-border)}.course-add-row input:focus,.course-add-row select:focus,.course-card-header input:focus,.course-edit-grid select:focus,.division-item input:focus,.division-add-row input:focus{outline:none;border-color:var(--admin-primary);box-shadow:0 0 0 3px #10b98126}@media (max-width: 720px){.course-add-row,.division-add-row,.course-actions,.division-actions{flex-direction:column;align-items:stretch}}.department-courses-page .course-card{background:#fff!important;color:var(--admin-text-primary)!important;border:1px solid var(--admin-border)!important}.department-courses-page .course-card:hover{background:#fff!important}.department-courses-page .course-card h3{color:var(--admin-text-primary)!important;border-bottom:none!important;padding-bottom:0!important;margin-bottom:0!important}.department-courses-page .course-card li{background:transparent!important;color:inherit!important}.department-courses-page .course-meta{color:var(--admin-text-secondary)!important}.department-courses-page .division-section,.department-courses-page .division-header,.department-courses-page .division-list,.department-courses-page .division-item,.department-courses-page .division-add-row,.department-courses-page .division-add-row input{color:var(--admin-text-primary)}.department-courses-page .division-item{background:#f8fafc!important;border:1px solid var(--admin-border-light)!important}.exam-controls{display:flex;gap:20px;margin-bottom:30px;flex-wrap:wrap}.course-selector{flex:1;min-width:250px}.course-selector label{display:block;margin-bottom:8px;font-weight:600;color:#333;font-size:14px}.form-select{width:100%;padding:10px 12px;border:1px solid #ddd;border-radius:6px;font-size:14px;background-color:#fff;cursor:pointer;transition:all .3s ease}.form-select:hover{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.form-select:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea33}.search-box{flex:1;min-width:200px;position:relative}.search-box i{position:absolute;right:12px;top:50%;transform:translateY(-50%);color:#999;font-size:16px}.search-input{width:100%;padding:10px 12px;border:1px solid #ddd;border-radius:6px;font-size:14px;transition:all .3s ease}.search-input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea26}.exams-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:15px;border-bottom:2px solid #f0f0f0}.exams-header h3{margin:0;font-size:18px;color:#333;font-weight:600}.exam-count{background:#f0f0f0;padding:6px 12px;border-radius:20px;font-size:13px;color:#666;font-weight:500}.exams-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(380px,1fr));gap:20px}.exam-card{background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:20px;transition:all .3s ease;display:flex;flex-direction:column}.exam-card:hover{border-color:#667eea;box-shadow:0 8px 24px #667eea26;transform:translateY(-2px)}.exam-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px;gap:10px}.exam-title{margin:0;font-size:16px;font-weight:600;color:#333;flex:1}.exam-division{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:4px 10px;border-radius:12px;font-size:12px;font-weight:600;white-space:nowrap}.exam-meta{background:#f9f9f9;padding:12px;border-radius:6px;margin-bottom:16px;display:grid;grid-template-columns:1fr 1fr;gap:12px}.meta-row{display:flex;flex-direction:column;gap:4px}.meta-label{font-size:12px;color:#999;font-weight:500;text-transform:uppercase}.meta-value{font-size:14px;color:#333;font-weight:600}.exam-description{font-size:13px;color:#666;line-height:1.4;margin:0 0 16px}.exam-link-section{margin-bottom:16px}.link-label{display:block;font-size:12px;color:#999;font-weight:600;margin-bottom:8px;text-transform:uppercase}.link-container{display:flex;gap:8px}.link-input{flex:1;padding:8px 10px;border:1px solid #ddd;border-radius:4px;font-size:12px;background:#f9f9f9;color:#666}.btn-copy{padding:8px 12px;background:#f0f0f0;border:1px solid #ddd;border-radius:4px;cursor:pointer;font-size:12px;font-weight:600;display:flex;align-items:center;gap:6px;transition:all .3s ease;white-space:nowrap}.btn-copy:hover{background:#667eea;border-color:#667eea;color:#fff}.exam-actions{display:flex;gap:10px;margin-bottom:12px}.btn-preview,.btn-share{flex:1;padding:10px 12px;border:1px solid #ddd;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:6px;transition:all .3s ease;background:#fff}.btn-preview{color:#667eea;border-color:#667eea}.btn-preview:hover{background:#667eea;color:#fff}.btn-share{color:#764ba2;border-color:#764ba2}.btn-share:hover{background:#764ba2;color:#fff}.exam-footer{text-align:center;padding-top:12px;border-top:1px solid #f0f0f0;font-size:12px;color:#999}.exam-date{font-style:italic}.empty-state{text-align:center;padding:60px 20px;background:#fafafa;border-radius:8px;border:1px dashed #ddd}.empty-state-icon{font-size:48px;color:#ddd;margin-bottom:16px}.empty-state h4{margin:0 0 8px;font-size:18px;color:#666;font-weight:600}.empty-state p{margin:0;font-size:14px;color:#999}.loading-state{text-align:center;padding:60px 20px;display:flex;flex-direction:column;align-items:center;gap:20px}.spinner{width:40px;height:40px;border:4px solid #f0f0f0;border-top-color:#667eea;border-radius:50%;animation:spin .8s linear infinite}@media (max-width: 768px){.exam-controls{flex-direction:column}.course-selector,.search-box{min-width:100%}.exams-grid,.exam-meta{grid-template-columns:1fr}.exam-actions,.link-container{flex-direction:column}.btn-copy{justify-content:center}}@media (max-width: 480px){.exam-header{flex-direction:column}.exam-division{align-self:flex-start}.exam-meta{grid-template-columns:1fr}}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:var(--admin-space-lg);margin-bottom:var(--admin-space-xl)}.stat-card{background:var(--admin-bg-card);border-radius:var(--admin-radius-lg);padding:var(--admin-space-lg);display:flex;align-items:center;gap:var(--admin-space-lg);box-shadow:var(--admin-shadow-sm);border:1px solid var(--admin-border);transition:all .2s ease}.stat-card:hover{transform:translateY(-3px);box-shadow:var(--admin-shadow-md)}.stat-icon{width:56px;height:56px;background:var(--admin-primary-light);color:var(--admin-primary);border-radius:var(--admin-radius-md);display:flex;align-items:center;justify-content:center;font-size:1.5rem;flex-shrink:0}.stat-content{flex:1}.stat-number{font-size:1.75rem;font-weight:var(--admin-font-bold);color:var(--admin-text-primary);line-height:1;margin:0}.stat-label{color:var(--admin-text-secondary);font-size:var(--admin-text-sm);margin-top:var(--admin-space-xs);font-weight:var(--admin-font-medium)}.stat-subtext{font-size:var(--admin-text-xs);color:var(--admin-text-tertiary);margin-top:var(--admin-space-xs)}.controls-section{background:var(--admin-bg-card);border:1px solid var(--admin-border);border-radius:var(--admin-radius-lg);padding:var(--admin-space-lg);margin-bottom:var(--admin-space-xl);display:flex;gap:var(--admin-space-lg);flex-wrap:wrap;align-items:center}.search-box{flex:1;min-width:250px;position:relative}.search-box input{width:100%;padding:var(--admin-space-md) var(--admin-space-lg);padding-left:40px;border:1px solid var(--admin-border);border-radius:var(--admin-radius-md);font-size:var(--admin-text-sm);background:var(--admin-bg-secondary)}.search-icon{position:absolute;left:var(--admin-space-lg);top:50%;transform:translateY(-50%);color:var(--admin-text-tertiary)}.view-toggle{display:flex;gap:var(--admin-space-sm);border:1px solid var(--admin-border);border-radius:var(--admin-radius-md);background:var(--admin-bg-secondary);padding:var(--admin-space-sm)}.view-toggle button{padding:var(--admin-space-sm) var(--admin-space-md);border:none;background:transparent;color:var(--admin-text-secondary);cursor:pointer;border-radius:var(--admin-radius-sm);transition:all .2s ease;font-size:var(--admin-text-xs)}.view-toggle button.active{background:var(--admin-bg-card);color:var(--admin-primary);font-weight:var(--admin-font-semibold)}.faculty-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--admin-space-lg)}.faculty-card{background:var(--admin-bg-card);border:1px solid var(--admin-border);border-radius:var(--admin-radius-lg);padding:var(--admin-space-lg);display:flex;flex-direction:column;gap:var(--admin-space-md);transition:all .2s ease;box-shadow:var(--admin-shadow-sm)}.faculty-card:hover{transform:translateY(-4px);box-shadow:var(--admin-shadow-md);border-color:var(--admin-primary)}.faculty-card-header{display:flex;align-items:flex-start;gap:var(--admin-space-md)}.faculty-avatar{width:48px;height:48px;border-radius:50%;background:var(--admin-primary-light);color:var(--admin-primary);display:flex;align-items:center;justify-content:center;font-weight:var(--admin-font-bold);flex-shrink:0}.faculty-info h3{margin:0 0 var(--admin-space-xs) 0;font-size:var(--admin-text-base);font-weight:var(--admin-font-semibold);color:var(--admin-text-primary)}.faculty-email{font-size:var(--admin-text-xs);color:var(--admin-text-secondary);margin:0}.faculty-department{font-size:var(--admin-text-xs);color:var(--admin-text-tertiary);margin:var(--admin-space-xs) 0 0 0}.faculty-actions{display:flex;gap:var(--admin-space-sm);padding-top:var(--admin-space-md);border-top:1px solid var(--admin-border-light)}.faculty-actions button{flex:1;padding:var(--admin-space-sm) var(--admin-space-md);background:var(--admin-bg-secondary);border:1px solid var(--admin-border);border-radius:var(--admin-radius-sm);color:var(--admin-text-primary);cursor:pointer;font-size:var(--admin-text-xs);transition:all .2s ease}.faculty-actions button:hover{background:var(--admin-primary-light);color:var(--admin-primary);border-color:var(--admin-primary)}.faculty-table-wrapper{background:var(--admin-bg-card);border-radius:var(--admin-radius-lg);border:1px solid var(--admin-border);overflow:hidden;box-shadow:var(--admin-shadow-sm)}.faculty-table{width:100%;border-collapse:collapse;font-size:var(--admin-text-sm)}.faculty-table thead{background:var(--admin-bg-secondary);border-bottom:1px solid var(--admin-border)}.faculty-table th{padding:var(--admin-space-lg);text-align:left;font-weight:var(--admin-font-semibold);color:var(--admin-text-primary);white-space:nowrap}.faculty-table td{padding:var(--admin-space-lg);border-bottom:1px solid var(--admin-border-light)}.faculty-table tbody tr:hover{background:var(--admin-bg-secondary)}.faculty-table tbody tr:last-child td{border-bottom:none}.faculty-name{font-weight:var(--admin-font-semibold);color:var(--admin-text-primary)}.faculty-status{display:inline-block;padding:var(--admin-space-xs) var(--admin-space-md);border-radius:12px;font-size:var(--admin-text-xs);font-weight:var(--admin-font-semibold)}.faculty-status.active{background:#ecfdf5;color:#047857}.faculty-status.inactive{background:#fef2f2;color:#991b1b}.action-buttons{display:flex;gap:var(--admin-space-sm)}.action-buttons button{padding:var(--admin-space-sm) var(--admin-space-md);background:var(--admin-bg-secondary);border:1px solid var(--admin-border);border-radius:var(--admin-radius-sm);color:var(--admin-text-primary);cursor:pointer;font-size:var(--admin-text-xs);transition:all .2s ease}.action-buttons button:hover{background:var(--admin-primary-light);border-color:var(--admin-primary);color:var(--admin-primary)}.action-buttons button.delete{color:var(--admin-danger)}.action-buttons button.delete:hover{background:#fef2f2;border-color:var(--admin-danger)}.empty-state{text-align:center;padding:var(--admin-space-2xl);background:var(--admin-bg-card);border:1px dashed var(--admin-border);border-radius:var(--admin-radius-lg)}.empty-state-icon{font-size:3rem;margin-bottom:var(--admin-space-lg);opacity:.5}.empty-state h3{margin:0 0 var(--admin-space-md) 0;color:var(--admin-text-primary);font-size:var(--admin-text-lg)}.empty-state p{margin:0;color:var(--admin-text-secondary);font-size:var(--admin-text-sm)}@media (max-width: 768px){.controls-section{flex-direction:column}.search-box{min-width:100%}.faculty-cards{grid-template-columns:1fr}.faculty-table{font-size:var(--admin-text-xs)}.faculty-table th,.faculty-table td{padding:var(--admin-space-md)}}.faculty-controls{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;flex-wrap:wrap}.search-container{position:relative;flex:1;max-width:400px}.search-container i{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--text-muted);font-size:1rem}.search-input{width:100%;padding:12px 12px 12px 40px;border:1px solid var(--border-color);border-radius:10px;font-size:.95rem;background:var(--card-bg);transition:all .2s ease}.search-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #10b9811a}.control-buttons{display:flex;align-items:center;gap:12px}.view-toggle{display:flex;background:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;overflow:hidden;padding:2px}.view-btn{padding:8px 12px;border:none;background:transparent;color:var(--text-muted);cursor:pointer;border-radius:6px;transition:all .2s ease}.view-btn.active{background:var(--primary-light);color:var(--primary)}.view-btn:hover:not(.active){background:var(--muted-surface);color:var(--text-main)}.btn-primary{background:var(--primary);color:var(--text-on-primary);border:none;padding:10px 20px;border-radius:8px;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:8px;transition:all .2s ease}.btn-primary:hover{background:var(--primary-hover);transform:translateY(-2px);box-shadow:0 4px 6px #10b98133}.faculty-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:24px}.faculty-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:16px;overflow:hidden;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;display:flex;flex-direction:column}.faculty-card:hover{transform:translateY(-4px);box-shadow:0 12px 24px #0000000f;border-color:var(--primary-light)}.faculty-header{padding:20px;display:flex;justify-content:space-between;align-items:flex-start}.faculty-avatar{width:56px;height:56px;background:var(--primary-light);color:var(--primary);border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:1.75rem}.faculty-actions{display:flex;gap:6px;opacity:0;transform:translate(10px);transition:all .2s ease}.faculty-card:hover .faculty-actions{opacity:1;transform:translate(0)}.action-btn{width:32px;height:32px;border:none;border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:.9rem;transition:all .2s ease}.view-btn-icon{background:var(--muted-surface);color:var(--text-main)}.view-btn-icon:hover{background:color-mix(in srgb,var(--border-color) 60%,var(--card-bg))}.credentials-btn{background:color-mix(in srgb,var(--warning, var(--warning-color, #f59e0b)) 18%,var(--card-bg));color:color-mix(in srgb,var(--warning, var(--warning-color, #f59e0b)) 55%,var(--text-main))}.credentials-btn:hover{background:color-mix(in srgb,var(--warning, var(--warning-color, #f59e0b)) 45%,var(--card-bg))}.edit-btn{background:color-mix(in srgb,var(--primary, #10b981) 16%,var(--card-bg));color:var(--primary)}.edit-btn:hover{background:color-mix(in srgb,var(--primary, #10b981) 28%,var(--card-bg))}.delete-btn{background:color-mix(in srgb,var(--danger, #ef4444) 14%,var(--card-bg));color:var(--danger)}.delete-btn:hover{background:color-mix(in srgb,var(--danger, #ef4444) 32%,var(--card-bg))}.faculty-content{padding:0 20px 20px;flex:1}.faculty-name{font-size:1.15rem;font-weight:700;color:var(--text-main);margin:0 0 4px}.faculty-employee-id{font-family:monospace;background:var(--muted-surface);padding:2px 6px;border-radius:4px;font-size:.8rem;color:var(--text-muted);display:inline-block;margin-bottom:8px}.faculty-email{font-size:.9rem;color:var(--text-muted);margin:0 0 12px;display:flex;align-items:center;gap:6px}.status-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:20px;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.status-active{background:var(--primary-light);color:var(--primary-hover)}.status-inactive{background:var(--muted-surface);color:var(--text-muted)}.faculty-table-container{background:var(--card-bg);border:1px solid var(--border-color);border-radius:16px;overflow:hidden;box-shadow:0 1px 3px #0000000d}.faculty-table{width:100%;border-collapse:collapse}.faculty-table th{background:var(--table-header);padding:16px 24px;text-align:left;font-weight:600;color:var(--text-muted);font-size:.8rem;text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--border-color)}.faculty-table td{padding:16px 24px;border-bottom:1px solid var(--border-color);color:var(--text-main);vertical-align:middle}.faculty-table tr:hover{background-color:var(--muted-surface)}.table-faculty-info .faculty-name-cell{font-weight:600;color:var(--text-main)}.table-faculty-info .faculty-email-cell{font-size:.85rem;color:var(--text-muted)}.username-badge,.employee-id-badge{font-family:monospace;background:var(--muted-surface);padding:4px 8px;border-radius:6px;font-size:.85rem;color:var(--text-main)}.skill-tag-small{background:var(--primary-light);color:var(--primary);padding:2px 8px;border-radius:12px;font-size:.75rem;font-weight:600;margin-right:4px;display:inline-block;margin-bottom:4px}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:2500;display:flex;align-items:center;justify-content:center;padding:20px}.modal-content{background:var(--card-bg);border-radius:16px;width:100%;max-width:500px;box-shadow:0 20px 25px -5px #0000001a;overflow:hidden;animation:modalSlideUp .3s ease-out}.modal-content.large{max-width:800px}.modal-header{padding:20px 24px;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center}.modal-header h3{margin:0;font-size:1.25rem;font-weight:700;color:var(--text-main)}.modal-close,.modal-close-btn{background:transparent;border:none;font-size:1.25rem;color:var(--text-muted);cursor:pointer;width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;transition:all .2s}.modal-close:hover,.modal-close-btn:hover{background:var(--muted-surface);color:var(--text-main)}.modal-body{padding:24px;max-height:70vh;overflow-y:auto}.modal-footer{padding:16px 24px;background:var(--table-header);border-top:1px solid var(--border-color);display:flex;justify-content:flex-end;gap:12px}.credential-item{margin-bottom:20px}.credential-item label{display:block;font-weight:600;margin-bottom:8px;color:var(--text-muted);font-size:.9rem}.credential-input-group{display:flex;align-items:center;gap:8px}.credential-value{font-family:monospace;font-size:1.1rem;font-weight:700;color:var(--text-main);background:var(--muted-surface);padding:8px 12px;border-radius:8px;flex:1}.btn-small{width:32px;height:32px;border-radius:6px;border:1px solid var(--border-color);background:var(--card-bg);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.btn-small:hover{background:var(--muted-surface);border-color:color-mix(in srgb,var(--border-color) 70%,var(--text-muted))}.btn-small.btn-success{background:var(--primary);color:var(--text-on-primary);border:none}.btn-small.btn-success:hover{background:var(--primary-hover)}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.empty-state{text-align:center;padding:60px 20px;background:var(--card-bg);border-radius:16px;border:2px dashed var(--border-color)}.empty-state-icon{font-size:3rem;color:var(--border-color);margin-bottom:16px}.empty-state h3{font-size:1.25rem;margin-bottom:8px}.empty-state p{color:var(--text-muted);margin-bottom:24px}@media (max-width: 768px){.faculty-controls{flex-direction:column;align-items:stretch}.control-buttons{justify-content:space-between}.faculty-profile-header{flex-direction:column;text-align:center}.faculty-details-grid{grid-template-columns:1fr}}.transfer-info{display:flex;flex-direction:column;gap:var(--admin-space-xl)}.transfer-staff-info{display:flex;align-items:center;gap:var(--admin-space-lg);padding:var(--admin-space-lg);background:var(--admin-bg-secondary);border-radius:var(--admin-radius-md);border:1px solid var(--admin-border)}.transfer-departments{display:grid;grid-template-columns:1fr auto 1fr;gap:var(--admin-space-lg);align-items:center}.department-box{display:flex;flex-direction:column;gap:var(--admin-space-sm)}.department-box label{font-weight:var(--admin-font-semibold);color:var(--admin-text-secondary);font-size:var(--admin-text-sm);text-transform:uppercase;letter-spacing:.5px}.dept-display{display:flex;align-items:center;gap:var(--admin-space-sm);padding:var(--admin-space-md);background:var(--admin-bg-secondary);border:1px solid var(--admin-border);border-radius:var(--admin-radius-md);font-weight:var(--admin-font-medium);color:var(--admin-text-primary)}.dept-display i{font-size:1.2rem;color:var(--admin-text-tertiary)}.dept-select{padding:var(--admin-space-md);border:2px solid var(--admin-primary);border-radius:var(--admin-radius-md);font-size:var(--admin-text-base);font-weight:var(--admin-font-medium);background:var(--admin-bg-card);color:var(--admin-text-primary);cursor:pointer;transition:all .2s ease}.dept-select:hover{background:var(--admin-primary-light)}.dept-select:focus{outline:none;box-shadow:0 0 0 3px var(--admin-primary-light)}.transfer-arrow{display:flex;align-items:center;justify-content:center;color:var(--admin-primary);font-size:1.5rem}.transfer-note{display:flex;align-items:flex-start;gap:var(--admin-space-md);padding:var(--admin-space-md);border-radius:var(--admin-radius-md);font-size:var(--admin-text-sm);line-height:1.5}.transfer-note i{flex-shrink:0;font-size:1.1rem;margin-top:2px}.transfer-note.info{background:#e3f2fd;color:#1565c0;border:1px solid #90caf9}.transfer-note.warning{background:#fff3e0;color:#e65100;border:1px solid #ffb74d}.transfer-note.success{background:#e8f5e9;color:#2e7d32;border:1px solid #81c784}.spinner-sm{display:inline-block;width:14px;height:14px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .6s linear infinite}.transfer-btn{background:var(--admin-primary-light)!important;color:var(--admin-primary)!important;border-color:var(--admin-primary)!important}.transfer-btn:hover{background:var(--admin-primary)!important;color:#fff!important}.faculty-department{display:flex;align-items:center;gap:6px;color:var(--admin-text-secondary);font-size:var(--admin-text-sm);margin:4px 0}.faculty-department i{color:var(--admin-text-tertiary)}@media (max-width: 768px){.transfer-departments{grid-template-columns:1fr;gap:var(--admin-space-md)}.transfer-arrow{transform:rotate(90deg)}.transfer-staff-info{flex-direction:column;text-align:center}}.btn-secondary{background:var(--card-bg, #ffffff);color:var(--text-main, #0f172a);border:1px solid var(--border-color, #e2e8f0);padding:10px 20px;border-radius:8px;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:8px;transition:all .2s ease;font-family:inherit}.btn-secondary:hover{background:var(--muted-surface, #f1f5f9);border-color:var(--text-muted, #94a3b8);transform:translateY(-2px);box-shadow:0 4px 6px #0000000d}.form-progress{display:flex;align-items:center;justify-content:center;gap:var(--admin-space-lg);margin-bottom:var(--admin-space-2xl);padding:var(--admin-space-lg);background:var(--admin-bg-card);border-radius:var(--admin-radius-lg);border:1px solid var(--admin-border);flex-wrap:wrap}.progress-step{display:flex;flex-direction:column;align-items:center;gap:var(--admin-space-sm);cursor:pointer;transition:all .3s ease;padding:var(--admin-space-md);border-radius:var(--admin-radius-md);min-width:100px}.progress-step:hover{background:var(--admin-bg-secondary)}.progress-step.active{background:var(--admin-primary);color:var(--admin-text-on-primary)}.progress-step.completed{color:var(--admin-success)}.step-icon{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--admin-bg-secondary);border:2px solid var(--admin-border);transition:all .3s ease;font-size:.9rem}.progress-step.active .step-icon{background:var(--admin-bg-card);border-color:var(--admin-primary);color:var(--admin-primary)}.progress-step.completed .step-icon{background:var(--admin-success);border-color:var(--admin-success);color:var(--admin-text-on-primary)}.step-label{font-size:var(--admin-text-xs);font-weight:var(--admin-font-medium);text-align:center}.progress-line{width:40px;height:2px;background:var(--admin-border);transition:all .3s ease}.progress-line.completed{background:var(--admin-success)}.form-card{background:var(--admin-bg-card);border-radius:var(--admin-radius-lg);border:1px solid var(--admin-border);overflow:hidden;box-shadow:var(--admin-shadow-sm)}.form-section{padding:var(--admin-space-2xl);border-bottom:1px solid var(--admin-border)}.section-header{display:flex;align-items:flex-start;gap:var(--admin-space-lg);margin-bottom:var(--admin-space-2xl)}.section-icon{width:48px;height:48px;border-radius:var(--admin-radius-md);background:var(--admin-primary);color:var(--admin-text-on-primary);display:flex;align-items:center;justify-content:center;font-size:1.3rem;flex-shrink:0}.section-header h3{font-size:var(--admin-text-lg);font-weight:var(--admin-font-bold);color:var(--admin-text-primary);margin:0}.section-header p{color:var(--admin-text-secondary);margin:var(--admin-space-sm) 0 0 0;font-size:var(--admin-text-sm);line-height:1.5}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--admin-space-lg);margin-bottom:var(--admin-space-lg)}.form-field{display:flex;flex-direction:column;gap:var(--admin-space-sm)}.form-field label{font-weight:var(--admin-font-semibold);color:var(--admin-text-primary);font-size:var(--admin-text-sm);display:block}.required{color:var(--admin-danger);margin-left:var(--admin-space-xs)}.form-field input,.form-field select,.form-field textarea{padding:var(--admin-space-md) var(--admin-space-lg);border:1px solid var(--admin-border);border-radius:var(--admin-radius-md);background:var(--admin-bg-main);color:var(--admin-text-primary);font-size:var(--admin-text-sm);font-family:var(--admin-font-family);transition:all .2s ease}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{outline:none;border-color:var(--admin-primary);box-shadow:0 0 0 3px var(--admin-primary-light)}.form-field input.valid{border-color:var(--admin-success)}.form-field input.invalid,.form-field select.invalid{border-color:var(--admin-danger)}.field-error{display:flex;align-items:center;gap:var(--admin-space-xs);color:var(--admin-danger);font-size:var(--admin-text-xs)}.field-hint{color:var(--admin-text-secondary);font-size:var(--admin-text-xs);margin-top:var(--admin-space-xs)}.subsection{margin-bottom:var(--admin-space-xl)}.subsection h4{font-size:var(--admin-text-base);font-weight:var(--admin-font-semibold);color:var(--admin-text-primary);margin:0 0 var(--admin-space-lg) 0;display:flex;align-items:center;gap:var(--admin-space-md)}.subsection h4:before{content:"";width:4px;height:16px;background:var(--admin-primary);border-radius:2px;flex-shrink:0}.array-item{display:flex;align-items:flex-end;gap:var(--admin-space-md);margin-bottom:var(--admin-space-md)}.array-item input{flex:1;padding:var(--admin-space-md) var(--admin-space-lg);border:1px solid var(--admin-border);border-radius:var(--admin-radius-md);background:var(--admin-bg-main);color:var(--admin-text-primary);font-size:var(--admin-text-sm)}.array-item input:focus{outline:none;border-color:var(--admin-primary);box-shadow:0 0 0 3px var(--admin-primary-light)}.btn-remove{padding:var(--admin-space-md) var(--admin-space-lg);background:var(--admin-danger);color:var(--admin-text-on-primary);border:none;border-radius:var(--admin-radius-md);cursor:pointer;transition:all .2s ease;font-size:var(--admin-text-sm);font-weight:var(--admin-font-semibold)}.btn-remove:hover{background:#dc2626;transform:translateY(-2px);box-shadow:var(--admin-shadow-md)}.btn-add{padding:var(--admin-space-md) var(--admin-space-lg);background:var(--admin-primary);color:var(--admin-text-on-primary);border:none;border-radius:var(--admin-radius-md);cursor:pointer;transition:all .2s ease;font-size:var(--admin-text-sm);font-weight:var(--admin-font-semibold);display:inline-flex;align-items:center;gap:var(--admin-space-sm)}.btn-add:hover{background:var(--admin-primary-dark);transform:translateY(-2px);box-shadow:var(--admin-shadow-md)}.form-actions{padding:var(--admin-space-xl);background:var(--admin-bg-secondary);border-top:1px solid var(--admin-border);display:flex;justify-content:flex-end;gap:var(--admin-space-md);flex-wrap:wrap}.form-actions button{padding:var(--admin-space-md) var(--admin-space-lg);border-radius:var(--admin-radius-md);font-weight:var(--admin-font-semibold);font-size:var(--admin-text-sm);cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;gap:var(--admin-space-sm);border:none}.btn-primary{background:var(--admin-primary);color:var(--admin-text-on-primary)}.btn-secondary{background:var(--admin-bg-tertiary);color:var(--admin-text-primary);border:1px solid var(--admin-border)}.btn-secondary:hover:not(:disabled){background:var(--admin-border-light);border-color:var(--admin-primary)}button:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 768px){.form-card{border-radius:var(--admin-radius-md)}.form-section{padding:var(--admin-space-lg)}.form-progress{flex-direction:column}.progress-line{display:none}.section-header{flex-direction:column}.form-grid{grid-template-columns:1fr}.form-field.span-2{grid-column:span 1}.form-actions{flex-direction:column}.form-actions button{width:100%;justify-content:center}.array-item{flex-direction:column}.array-item input{width:100%}}.page-header h2{margin:0 0 4px;color:var(--text-on-primary, #ffffff);font-size:1.5rem;font-weight:600}.page-header p{margin:0;color:var(--text-on-primary, rgba(255, 255, 255, .9));font-size:.875rem;opacity:.9}.form-progress{display:flex;align-items:center;justify-content:center;margin-bottom:40px;padding:20px;background:var(--bg-secondary);border-radius:12px;border:1px solid var(--border-color)}.progress-step{display:flex;flex-direction:column;align-items:center;gap:8px;cursor:pointer;transition:all .3s ease;padding:12px;border-radius:8px;min-width:100px}.progress-step:hover{background:var(--bg-hover)}.progress-step.active{background:var(--primary-color);color:var(--text-on-primary, #ffffff)}.progress-step.completed{color:var(--success-color)}.step-icon{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--bg-tertiary);border:2px solid var(--border-color);transition:all .3s ease}.progress-step.active .step-icon{background:var(--bg-secondary);border-color:var(--primary-color);color:var(--primary-color)}.progress-step.completed .step-icon{background:var(--success-color);border-color:var(--success-color);color:var(--text-on-primary, #ffffff)}.step-label{font-size:.85rem;font-weight:500;text-align:center}.progress-line{width:60px;height:2px;background:var(--border-color);margin:0 10px;transition:all .3s ease}.progress-line.completed{background:var(--success-color)}.form-card{background:var(--bg-secondary);border-radius:12px;border:1px solid var(--border-color);overflow:hidden;box-shadow:var(--shadow-sm)}.form-section{padding:30px;border-bottom:1px solid var(--border-color)}.form-section:last-child{border-bottom:none}.section-header{display:flex;align-items:center;gap:16px;margin-bottom:30px}.section-icon{width:48px;height:48px;border-radius:12px;background:var(--primary-color);color:var(--text-on-primary, #ffffff);display:flex;align-items:center;justify-content:center;font-size:1.2rem}.section-header h3{font-size:1.5rem;font-weight:600;color:var(--text-primary);margin:0 0 4px}.section-header p{color:var(--text-secondary);margin:0;font-size:.95rem}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;margin-bottom:20px}.form-field.span-2{grid-column:span 2}.form-field{display:flex;flex-direction:column;gap:6px}.form-field label{font-weight:500;color:var(--text-primary);font-size:.9rem}.required{color:var(--error-color)}.input-wrapper{position:relative}.form-field input,.form-field select{padding:12px 16px;border:2px solid var(--border-color);border-radius:8px;background:var(--bg-primary);color:var(--text-primary);font-size:.95rem;transition:all .3s ease;width:100%}.form-field input:focus,.form-field select:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary-color, #10b981) 25%,transparent)}.form-field input.valid{border-color:var(--success-color)}.form-field input.invalid,.form-field select.invalid{border-color:var(--error-color)}.input-icon{position:absolute;right:12px;top:50%;transform:translateY(-50%);pointer-events:none}.input-icon.valid{color:var(--success-color)}.input-icon.invalid{color:var(--error-color)}.field-error{display:flex;align-items:center;gap:6px;color:var(--error-color);font-size:.85rem;margin-top:4px}.field-hint{color:var(--text-secondary);font-size:.8rem;margin-top:4px}.subsection{margin-bottom:30px}.subsection h4{font-size:1.1rem;font-weight:600;color:var(--text-primary);margin:0 0 16px;display:flex;align-items:center;gap:8px}.subsection h4:before{content:"";width:4px;height:16px;background:var(--primary-color);border-radius:2px}.array-item{display:flex;align-items:center;gap:12px;margin-bottom:12px}.array-item input{flex:1;padding:10px 12px;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-primary);color:var(--text-primary);font-size:.9rem}.array-item input:focus{outline:none;border-color:var(--primary-color)}.btn-remove{padding:8px;background:var(--error-color);color:var(--text-on-primary, #ffffff);border:none;border-radius:6px;cursor:pointer;transition:all .3s ease;font-size:.8rem}.btn-remove:hover{background:var(--error-color, #dc2626);transform:scale(1.05)}.btn-add,.btn-add-small{padding:10px 16px;background:var(--primary-color);color:var(--text-on-primary, #ffffff);border:none;border-radius:8px;cursor:pointer;transition:all .3s ease;font-size:.9rem;font-weight:500;display:inline-flex;align-items:center;gap:6px}.btn-add:hover,.btn-add-small:hover{background:var(--primary-hover);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-add-small{padding:6px 12px;font-size:.8rem}.qualification-item{position:relative;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:8px;padding:20px;margin-bottom:16px}.qualification-item .form-grid{margin-bottom:0}.qualification-item .btn-remove{position:absolute;top:12px;right:12px;padding:6px;font-size:.7rem}.form-actions{padding:30px;background:var(--bg-tertiary);border-top:1px solid var(--border-color);display:flex;justify-content:flex-end;gap:12px}.btn-primary,.btn-secondary,.btn-secondary-ghost{padding:12px 24px;border-radius:8px;font-weight:500;font-size:.95rem;cursor:pointer;transition:all .3s ease;display:inline-flex;align-items:center;gap:6px;border:none}.btn-primary{background:var(--primary-color);color:var(--text-on-primary, #ffffff)}.btn-primary:hover:not(:disabled){background:var(--primary-hover);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-primary:disabled{background:var(--text-disabled);cursor:not-allowed;transform:none}.btn-secondary{background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-color)}.btn-secondary:hover:not(:disabled){background:var(--bg-hover);border-color:var(--text-secondary)}.btn-secondary:disabled{opacity:.6;cursor:not-allowed}.btn-secondary-ghost{background:transparent;color:var(--text-secondary);border:1px solid var(--border-color)}.btn-secondary-ghost:hover:not(:disabled){background:var(--bg-hover);color:var(--text-primary)}.loading-spinner{width:16px;height:16px;border:2px solid transparent;border-top:2px solid currentColor;border-radius:50%;animation:spin 1s linear infinite}.loading-spinner.small{width:14px;height:14px;border-width:1.5px}@media (max-width: 768px){.scrollable-wrapper{padding:16px}.form-progress{flex-wrap:wrap;gap:16px}.progress-step{min-width:80px}.progress-line{display:none}.form-section{padding:20px}.section-header{flex-direction:column;align-items:flex-start;gap:12px}.section-header h3{font-size:1.25rem}.form-grid{grid-template-columns:1fr;gap:16px}.form-field.span-2{grid-column:span 1}.form-actions{flex-direction:column;gap:12px}.btn-primary,.btn-secondary,.btn-secondary-ghost{width:100%;justify-content:center}.qualification-item{padding:16px}.array-item{flex-direction:column;align-items:stretch;gap:8px}.array-item input{flex:none}.btn-remove{align-self:flex-end;width:32px;height:32px;display:flex;align-items:center;justify-content:center}}@media (max-width: 480px){.section-icon{width:40px;height:40px;font-size:1rem}.form-section{padding:16px}.subsection h4{font-size:1rem}}@media (prefers-color-scheme: dark){.form-card{background:var(--bg-secondary)}.qualification-item,.form-actions{background:var(--bg-tertiary)}}@media print{.form-progress,.form-actions{display:none}.form-section,.qualification-item{break-inside:avoid}}.course-details-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0f172ab3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:2500;padding:20px}.course-details-modal-container{background:var(--admin-bg-card, #ffffff);border:1px solid var(--admin-border, #e2e8f0);border-radius:var(--admin-radius-lg, 12px);box-shadow:var(--admin-shadow-lg, 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04));width:100%;max-width:900px;max-height:90vh;display:flex;flex-direction:column;overflow:hidden;animation:modalFadeIn .3s cubic-bezier(.16,1,.3,1)}@keyframes modalFadeIn{0%{opacity:0;transform:scale(.95) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}.course-details-modal-header{padding:var(--admin-space-lg, 16px) var(--admin-space-xl, 24px);border-bottom:1px solid var(--admin-border-light, #f1f5f9);display:flex;justify-content:space-between;align-items:center}.course-details-modal-header h3{margin:0;font-size:1.25rem;font-weight:700;color:var(--admin-text-primary, #0f172a)}.subject-meta-text{margin:4px 0 0;font-size:.875rem;color:var(--admin-text-secondary, #64748b)}.close-btn{background:transparent;border:none;font-size:1.25rem;color:var(--admin-text-secondary, #64748b);cursor:pointer;width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.close-btn:hover{background:var(--admin-bg-secondary, #f8fafc);color:var(--admin-text-primary, #0f172a)}.course-details-modal-body{padding:var(--admin-space-xl, 24px);overflow-y:auto;flex:1;display:flex;flex-direction:column;gap:var(--admin-space-xl, 24px)}.card-banner{background:#3b82f614;border:1px solid rgba(59,130,246,.2);border-radius:var(--admin-radius-md, 8px);padding:var(--admin-space-md, 12px) var(--admin-space-lg, 16px);display:flex;align-items:center;gap:var(--admin-space-md, 12px);color:var(--admin-accent-primary, #3b82f6)}.copy-control{display:flex;flex-direction:column;flex-grow:1}.copy-control label{font-size:.8rem;font-weight:600;margin-bottom:4px}.copy-control select{padding:8px 12px;border:1px solid var(--admin-border, #cbd5e1);border-radius:var(--admin-radius-md, 6px);background:var(--admin-bg-card, #ffffff);color:var(--admin-text-primary, #0f172a);font-weight:500;outline:none}.form-section-card{background:var(--admin-bg-secondary, #f8fafc);border:1px solid var(--admin-border-light, #e2e8f0);border-radius:var(--admin-radius-lg, 10px);padding:var(--admin-space-lg, 20px);box-shadow:0 1px 3px #0000000d}.section-title{margin:0 0 16px;font-size:1rem;font-weight:600;color:var(--admin-text-primary, #1e293b);border-bottom:2px solid var(--admin-border, #e2e8f0);padding-bottom:8px;display:flex;align-items:center;gap:8px}.section-title i{color:var(--admin-accent-primary, #3b82f6)}.modal-grid-row{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:16px}.modal-grid-row:last-child{margin-bottom:0}.double-span{grid-column:span 2}.modal-form-field{display:flex;flex-direction:column}.modal-form-field label{font-size:.825rem;font-weight:600;color:var(--admin-text-secondary, #475569);margin-bottom:6px}.modal-form-field input{padding:8px 12px;border:1px solid var(--admin-border, #cbd5e1);border-radius:var(--admin-radius-md, 6px);font-size:.875rem;background-color:var(--admin-bg-card, #ffffff);color:var(--admin-text-primary, #0f172a);transition:border-color .2s ease}.modal-form-field input:focus{border-color:var(--admin-accent-primary, #3b82f6);outline:none}.calculated-input{background-color:var(--admin-bg-disabled, #f1f5f9)!important;color:var(--admin-text-secondary, #64748b)!important;font-weight:600;cursor:not-allowed}.grand-total{background-color:#10b9811a!important;border-color:#10b9814d!important;color:#10b981!important}.learning-scheme-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.assessment-subsection{margin-bottom:var(--admin-space-xl, 20px)}.assessment-subsection:last-child{margin-bottom:0}.assessment-subsection h5{margin:0 0 10px;font-size:.875rem;font-weight:600;color:var(--admin-text-primary, #334155)}.assessment-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.assessment-grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.section-title-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;border-bottom:2px solid var(--admin-border, #e2e8f0);padding-bottom:8px}.section-title-row .section-title{border-bottom:none;padding-bottom:0;margin-bottom:0}.btn-add-co{background:var(--admin-accent-primary, #3b82f6);color:#fff;border:none;padding:6px 12px;border-radius:var(--admin-radius-md, 6px);font-size:.825rem;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:6px;transition:all .2s ease}.btn-add-co:hover{background:#2563eb;transform:translateY(-1px)}.no-cos-banner{text-align:center;padding:var(--admin-space-lg, 20px);color:var(--admin-text-tertiary, #94a3b8);font-style:italic;font-size:.875rem}.co-list-container{display:flex;flex-direction:column;gap:10px}.co-row-item{display:flex;align-items:center;gap:12px;background:var(--admin-bg-card, #ffffff);border:1px solid var(--admin-border-light, #e2e8f0);border-radius:var(--admin-radius-md, 6px);padding:8px 12px;transition:all .2s ease}.co-row-item:hover{box-shadow:0 4px 6px -1px #0000000d;border-color:var(--admin-accent-primary, #3b82f6)}.co-number-badge{background:var(--admin-accent-primary, #3b82f6);color:#fff;font-weight:700;font-size:.75rem;padding:4px 8px;border-radius:4px;min-width:32px;text-align:center}.co-description-field{flex:1}.co-description-field input{width:100%;border:none;padding:6px 0;font-size:.875rem;color:var(--admin-text-primary, #0f172a)}.co-description-field input:focus{outline:none}.co-delete-btn{background:transparent;border:none;color:#ef4444;cursor:pointer;padding:6px;border-radius:4px;display:flex;align-items:center;justify-content:center;transition:background .2s ease}.co-delete-btn:hover{background:#fef2f2}.modal-footer-actions{display:flex;justify-content:flex-end;gap:12px;padding:var(--admin-space-md, 16px) 0 0 0;border-top:1px solid var(--admin-border-light, #f1f5f9)}.modal-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:50px;gap:12px}.spinner{width:40px;height:40px;border:4px solid var(--admin-border, #e2e8f0);border-top-color:var(--admin-accent-primary, #3b82f6);border-radius:50%;animation:spin .8s linear infinite}@media (max-width: 768px){.course-details-modal-container{max-height:95vh}.modal-grid-row{grid-template-columns:1fr}.learning-scheme-grid,.assessment-grid{grid-template-columns:repeat(2,1fr)}.assessment-grid-3{grid-template-columns:1fr}.modal-footer-actions{flex-direction:column}.modal-footer-actions button{width:100%}}.subject-form-card,.subject-table-card,.info-card,.subject-upload-card{background:var(--admin-bg-card);border:1px solid var(--admin-border);border-radius:var(--admin-radius-lg);padding:var(--admin-space-xl);box-shadow:var(--admin-shadow-sm);margin-bottom:var(--admin-space-2xl)}.subject-form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--admin-space-lg)}.subject-form-grid input,.subject-form-grid select{padding:10px 12px;border:1px solid var(--admin-border);border-radius:var(--admin-radius-md);font-family:var(--admin-font-family)}.form-field label{display:block;font-weight:var(--admin-font-semibold);color:var(--admin-text-secondary);margin-bottom:6px}.form-actions{display:flex;gap:var(--admin-space-md);align-items:center}.upload-row{display:flex;gap:var(--admin-space-md);align-items:center;flex-wrap:wrap;margin-bottom:var(--admin-space-md)}.file-chip{background:var(--admin-bg-secondary);border-radius:var(--admin-radius-md);padding:6px 10px;font-size:var(--admin-text-sm);color:var(--admin-text-secondary)}.download-template-card-box{display:flex;align-items:center;justify-content:space-between;background-color:var(--admin-bg-secondary);border:1px solid var(--admin-border);border-radius:var(--admin-radius-md);padding:14px 18px;margin-bottom:var(--admin-space-lg);gap:var(--admin-space-lg)}.template-info h4{font-size:13.5px;font-weight:600;color:var(--admin-text-primary);margin:0}.template-info p{font-size:11.5px;color:var(--admin-text-secondary);margin:2px 0 0}.btn-icon-svg{width:16px;height:16px;margin-right:6px}.upload-selection-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--admin-space-lg);margin-bottom:var(--admin-space-lg)}.upload-selection-grid .form-field{display:flex;flex-direction:column}.upload-selection-grid select{padding:10px 12px;border:1px solid var(--admin-border);border-radius:var(--admin-radius-md);font-family:var(--admin-font-family);background-color:var(--admin-bg-input);color:var(--admin-text-primary);cursor:pointer}.upload-selection-grid select:disabled{opacity:.5;cursor:not-allowed;background-color:var(--admin-bg-disabled)}.upload-course-meta{display:flex;gap:var(--admin-space-md);flex-wrap:wrap;margin-bottom:var(--admin-space-lg);padding:var(--admin-space-md);background-color:var(--admin-bg-secondary);border-radius:var(--admin-radius-md);border-left:4px solid var(--admin-accent-primary)}.meta-badge{display:flex;align-items:center;gap:6px}.meta-label{font-weight:var(--admin-font-semibold);color:var(--admin-text-secondary);font-size:var(--admin-text-sm)}.meta-value{background:var(--admin-bg-tertiary);padding:4px 8px;border-radius:var(--admin-radius-sm);color:var(--admin-accent-primary);font-weight:600;font-size:var(--admin-text-sm)}.preview-info{display:flex;gap:var(--admin-space-md);flex-wrap:wrap;font-size:var(--admin-text-sm);color:var(--admin-text-secondary);margin-bottom:var(--admin-space-md)}.btn-ghost{background:transparent;border:1px solid var(--admin-border);color:var(--admin-text-secondary);padding:6px 10px;border-radius:var(--admin-radius-md)}.btn-danger-outline{background:transparent;border:1px solid rgba(239,68,68,.45);color:#ef4444;padding:6px 10px;border-radius:var(--admin-radius-md)}.info-card{display:flex;align-items:center;justify-content:space-between;gap:var(--admin-space-lg);background:linear-gradient(135deg,var(--admin-bg-secondary) 0%,var(--admin-bg-card) 100%);border:1px solid var(--admin-accent-primary);border-left:4px solid var(--admin-accent-primary)}.info-header{display:flex;align-items:center;gap:var(--admin-space-md);flex:1}.info-header i{font-size:2rem;color:var(--admin-accent-primary)}.info-header div h3{margin:0 0 4px;color:var(--admin-text-primary)}.info-header div p{margin:0;color:var(--admin-text-secondary);font-size:var(--admin-text-sm)}@media (max-width: 720px){.form-header-row,.form-actions,.table-actions{flex-direction:column;align-items:stretch}.info-card{flex-direction:column;align-items:flex-start}.info-card button{width:100%}}.subjects-filter-card,.subject-table-card{background:var(--admin-bg-card);border:1px solid var(--admin-border);border-radius:var(--admin-radius-lg);padding:var(--admin-space-xl);box-shadow:var(--admin-shadow-sm);margin-bottom:var(--admin-space-2xl)}.form-header-row{display:flex;justify-content:space-between;gap:var(--admin-space-lg);margin-bottom:var(--admin-space-lg)}.filter-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:var(--admin-space-lg);margin-bottom:var(--admin-space-lg)}.form-field{display:flex;flex-direction:column}.form-field label{display:block;font-weight:var(--admin-font-semibold);color:var(--admin-text-secondary);margin-bottom:6px;font-size:var(--admin-text-sm)}.form-field select,.form-field input{padding:10px 12px;border:1px solid var(--admin-border);border-radius:var(--admin-radius-md);font-family:var(--admin-font-family);background-color:var(--admin-bg-input);color:var(--admin-text-primary)}.form-field select:disabled{opacity:.5;cursor:not-allowed;background-color:var(--admin-bg-disabled)}.filter-summary{display:flex;gap:var(--admin-space-md);flex-wrap:wrap;margin-bottom:var(--admin-space-lg);padding:var(--admin-space-md);background-color:var(--admin-bg-secondary);border-radius:var(--admin-radius-md);border-left:4px solid var(--admin-accent-primary)}.summary-badge{display:flex;align-items:center;gap:6px}.summary-label{font-weight:var(--admin-font-semibold);color:var(--admin-text-secondary);font-size:var(--admin-text-sm)}.summary-value{background:var(--admin-bg-tertiary);padding:4px 8px;border-radius:var(--admin-radius-sm);color:var(--admin-accent-primary);font-weight:600;font-size:var(--admin-text-sm)}.filter-actions{display:flex;gap:var(--admin-space-md);flex-wrap:wrap}.btn-primary,.btn-secondary,.btn-tertiary{padding:10px 16px;border-radius:var(--admin-radius-md);font-size:var(--admin-text-sm);font-weight:var(--admin-font-semibold);cursor:pointer;border:none;display:flex;align-items:center;gap:6px;transition:all .2s ease}.btn-primary{background:var(--admin-accent-primary);color:#fff}.btn-primary:hover{background:#0956cc;transform:translateY(-1px)}.btn-secondary{background:transparent;border:1px solid var(--admin-border);color:var(--admin-text-secondary)}.btn-secondary:hover{background:var(--admin-bg-secondary)}.btn-tertiary{background:transparent;border:1px solid var(--admin-accent-primary);color:var(--admin-accent-primary)}.btn-tertiary:hover{background:var(--admin-accent-primary);color:#fff}.table-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--admin-space-md)}.table-count{color:var(--admin-text-secondary);font-size:var(--admin-text-sm)}.table-wrapper{width:100%;overflow-x:auto}.subject-table{width:100%;border-collapse:collapse}.subject-table th,.subject-table td{text-align:left;padding:12px 10px;border-bottom:1px solid var(--admin-border-light);font-size:var(--admin-text-sm)}.subject-table th{background-color:var(--admin-bg-secondary);font-weight:var(--admin-font-semibold);color:var(--admin-text-secondary);sticky:true}.code-cell{font-family:Courier New,monospace;font-weight:600;color:var(--admin-accent-primary)}.table-actions{display:flex;gap:var(--admin-space-sm)}.btn-ghost{background:transparent;border:1px solid var(--admin-border);color:var(--admin-text-secondary);padding:6px 10px;border-radius:var(--admin-radius-md);cursor:pointer;font-size:var(--admin-text-sm);transition:all .2s ease}.btn-ghost:hover{background:var(--admin-bg-secondary);border-color:var(--admin-accent-primary);color:var(--admin-accent-primary)}.btn-danger-outline{background:transparent;border:1px solid rgba(239,68,68,.45);color:#ef4444;padding:6px 10px;border-radius:var(--admin-radius-md);cursor:pointer;font-size:var(--admin-text-sm);transition:all .2s ease}.btn-danger-outline:hover{background:#ef44441a;border-color:#ef4444}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;gap:var(--admin-space-md)}.loading-spinner{width:40px;height:40px;border:4px solid var(--admin-border);border-top-color:var(--admin-accent-primary);border-radius:50%;animation:spin .8s linear infinite}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;gap:var(--admin-space-md);text-align:center}.empty-state-icon{font-size:3rem;color:var(--admin-text-tertiary);opacity:.5}.empty-state h3{margin:var(--admin-space-md) 0 var(--admin-space-sm) 0;color:var(--admin-text-secondary)}.empty-state p{color:var(--admin-text-tertiary);font-size:var(--admin-text-sm)}.btn-danger{background:#ef4444;color:#fff;padding:10px 16px;border:none;border-radius:var(--admin-radius-md);font-weight:var(--admin-font-semibold);cursor:pointer;display:flex;align-items:center;gap:6px;transition:all .2s ease}.btn-danger:hover{background:#dc2626}.btn-danger:disabled{background:#fecaca;cursor:not-allowed;opacity:.6}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:2500;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-content{background:var(--admin-bg-card);border-radius:var(--admin-radius-lg);box-shadow:0 20px 25px -5px #0000001a;max-width:450px;width:90%;overflow:hidden;animation:slideUp .3s ease}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:var(--admin-space-lg);border-bottom:1px solid var(--admin-border)}.modal-header h3{margin:0;color:var(--admin-text-primary)}.modal-close{background:transparent;border:none;font-size:1.5rem;color:var(--admin-text-secondary);cursor:pointer;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:var(--admin-radius-md);transition:all .2s ease}.modal-close:hover{background:var(--admin-bg-secondary)}.modal-close:disabled{cursor:not-allowed;opacity:.5}.modal-body{padding:var(--admin-space-lg)}.warning-text{display:flex;gap:10px;align-items:flex-start;background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:var(--admin-radius-md);padding:var(--admin-space-md);margin-bottom:var(--admin-space-lg);color:#dc2626;font-size:var(--admin-text-sm)}.warning-text i{flex-shrink:0;margin-top:2px}.modal-body .form-field{margin-bottom:var(--admin-space-lg)}.modal-body .form-field input{padding:10px 12px;border:1px solid var(--admin-border);border-radius:var(--admin-radius-md);font-family:var(--admin-font-family);width:100%;box-sizing:border-box}.modal-body .form-field input:disabled{background-color:var(--admin-bg-secondary);cursor:not-allowed;opacity:.7}.modal-footer{display:flex;gap:var(--admin-space-md);padding:var(--admin-space-lg);border-top:1px solid var(--admin-border);justify-content:flex-end}.modal-footer button{padding:10px 16px;border-radius:var(--admin-radius-md);font-weight:var(--admin-font-semibold);cursor:pointer;border:none;transition:all .2s ease;min-width:100px}@media (max-width: 720px){.filter-grid{grid-template-columns:1fr}.filter-summary,.filter-actions{flex-direction:column}.filter-actions button{width:100%;justify-content:center}.table-wrapper{border-radius:var(--admin-radius-md)}.subject-table th,.subject-table td{padding:8px 6px}.modal-content{width:95%;max-width:100%}.modal-footer{flex-direction:column}.modal-footer button{width:100%}}.view-format-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;height:60vh;gap:12px}.format-view-page{padding:var(--admin-space-xl, 24px)}.format-actions{display:flex;gap:12px}.msbte-sheet-card{background:#fff;border:1px solid #d1d5db;border-radius:4px;box-shadow:0 4px 6px -1px #0000000d;padding:30px;margin-top:20px;color:#000;font-family:Arial,sans-serif}.sheet-heading{margin-bottom:20px;border-bottom:2px solid #000000;padding-bottom:8px}.sheet-heading h3{margin:0;font-size:1.1rem;font-weight:700;color:#000;letter-spacing:.5px}.table-responsive{width:100%;overflow-x:auto;margin-bottom:30px}.msbte-academic-table{width:100%;border-collapse:collapse;font-size:11px;border:2px solid #000000}.msbte-academic-table th,.msbte-academic-table td{border:1px solid #000000;padding:6px 4px;text-align:center;vertical-align:middle}.msbte-academic-table th{background-color:#f3f4f6;font-weight:700}.msbte-academic-table th.vertical-header{min-width:60px}.msbte-academic-table th.title-header{min-width:180px}.msbte-academic-table th.category-header{min-width:70px}.msbte-academic-table th.duration-header{min-width:60px}.msbte-academic-table td.title-left{text-align:left;padding-left:8px;font-weight:500}.msbte-academic-table td.code-bold,.msbte-academic-table td.credits-bold,.msbte-academic-table td.total-bold,.msbte-academic-table td.grand-total-bold{font-weight:700}.msbte-academic-table td.grand-total-bold{background-color:#f9fafb}.co-view-section{margin-top:30px;border-top:1px solid #e5e7eb;padding-top:20px}.co-view-section h4{margin:0 0 15px;font-size:1rem;font-weight:700;color:#000}.co-grid-view{display:flex;flex-direction:column;gap:12px}.co-view-item{display:flex;align-items:flex-start;gap:16px;padding-bottom:8px;border-bottom:1px dashed #e5e7eb}.co-view-item:last-child{border-bottom:none}.co-label{background-color:#3b82f6;color:#fff;font-weight:700;font-size:10px;padding:3px 6px;border-radius:3px;min-width:36px;text-align:center}.co-desc{margin:0;font-size:12px;line-height:1.5;color:#1f2937;text-align:left}.no-cos-warning{color:#6b7280;font-style:italic;font-size:12px}@media print{body{background:#fff!important;color:#000!important}.no-print,header,footer,.sidebar,.admin-sidebar,.admin-header,nav,button,.page-header{display:none!important}.app-container{padding:0!important;margin:0!important}.main-content-wrapper,.scrollable-content,.admin-content,.format-view-page{padding:0!important;margin:0!important;width:100%!important;max-width:100%!important;box-shadow:none!important;border:none!important;background:#fff!important}.msbte-sheet-card{border:none!important;box-shadow:none!important;padding:0!important;margin:0!important;background:#fff!important;width:100%!important}.msbte-academic-table{page-break-inside:avoid;width:100%!important;font-size:10px!important}.co-view-section{page-break-before:auto}}.vision-mission-manager{max-width:1200px;margin:0 auto;padding-bottom:var(--admin-space-2xl)}.vm-tabs-container{display:flex;gap:var(--admin-space-md);margin-bottom:var(--admin-space-xl);border-bottom:2px solid var(--admin-border);padding-bottom:var(--admin-space-sm)}.vm-tab-btn{background:transparent;border:none;color:var(--admin-text-secondary);font-size:1.05rem;font-weight:600;padding:var(--admin-space-sm) var(--admin-space-xl);cursor:pointer;border-radius:var(--admin-border-radius-md);transition:all .3s ease;display:flex;align-items:center;gap:var(--admin-space-sm)}.vm-tab-btn:hover{color:var(--admin-primary);background:var(--admin-primary-light)}.vm-tab-btn.active{color:var(--admin-primary);background:var(--admin-primary-light);box-shadow:0 4px 12px #10b9811a}.department-select-section{background:var(--admin-bg-card);border:1px solid var(--admin-border);border-radius:var(--admin-border-radius-lg);padding:var(--admin-space-lg);box-shadow:var(--admin-shadow-sm)}.card-header-accent{border-left:4px solid var(--admin-primary);padding-left:var(--admin-space-md);margin-bottom:var(--admin-space-md)}.card-header-accent h3{margin:0;font-size:1.25rem;font-weight:700;color:var(--admin-text-primary)}.array-item-row{background:var(--admin-bg-secondary);padding:var(--admin-space-sm) var(--admin-space-md);border-radius:var(--admin-border-radius-md);border:1px dashed var(--admin-border);transition:border-color .2s ease}.array-item-row:hover{border-color:var(--admin-primary)}.row-number{font-weight:700;color:var(--admin-primary);min-width:24px}.no-items-text{color:var(--admin-text-secondary);font-style:italic;padding:var(--admin-space-md);text-align:center}.outcome-block-row{border-left:3px solid var(--admin-primary);background:var(--admin-bg-secondary);border-radius:var(--admin-border-radius-md);padding:var(--admin-space-lg);box-shadow:none}.outcome-block-row.secondary-card{border:1px solid var(--admin-border);border-left:4px solid var(--admin-primary)}.outcome-title-badge{background:var(--admin-primary-light);color:var(--admin-primary);padding:var(--admin-space-xs) var(--admin-space-md);border-radius:9999px;font-size:.8rem;font-weight:700;text-transform:uppercase}.outcome-title-badge.pso-badge{background:#0ea5e91a;color:#0ea5e9}.form-action-bar{padding:var(--admin-space-md) var(--admin-space-xl);display:flex;justify-content:flex-end}.form-action-bar:hover{transform:none;box-shadow:var(--admin-shadow-sm)}.btn-save{min-width:160px;font-weight:700}.spinner-border-sm{width:1rem;height:1rem;border-width:.15em;display:inline-block;vertical-align:text-bottom;border:.15em solid currentColor;border-right-color:transparent;border-radius:50%;animation:spinner-border .75s linear infinite}@keyframes spinner-border{to{transform:rotate(360deg)}}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:var(--admin-space-md)}@media (max-width: 768px){.grid-2{grid-template-columns:1fr}.vm-tabs-container{flex-direction:column;gap:var(--admin-space-xs)}}.manage-rooms-container{max-width:1100px;margin:0 auto;padding:var(--admin-space-md) var(--admin-space-md) var(--admin-space-2xl);font-family:Outfit,Inter,sans-serif;color:var(--admin-text-primary)}.manage-rooms-header{margin-bottom:var(--admin-space-xl)}.manage-rooms-header h2{font-size:2.2rem;font-weight:700;background:linear-gradient(135deg,var(--admin-primary),var(--admin-accent));-webkit-background-clip:text;-webkit-text-fill-color:transparent;margin-bottom:6px}.manage-rooms-header .subtitle{font-size:.95rem;color:var(--admin-text-secondary)}.rooms-tabs-container{display:flex;gap:var(--admin-space-md);margin-bottom:var(--admin-space-lg);border-bottom:1px solid rgba(255,255,255,.08);padding-bottom:12px}.rooms-tab-btn{display:flex;align-items:center;gap:10px;padding:12px 24px;background:#ffffff08;border:1px solid rgba(255,255,255,.06);border-radius:12px;color:var(--admin-text-secondary);font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1)}.rooms-tab-btn i{font-size:1.1rem;transition:transform .3s ease}.rooms-tab-btn:hover{background:#ffffff12;color:var(--admin-text-primary);border-color:#ffffff26}.rooms-tab-btn.active{background:linear-gradient(135deg,rgba(var(--admin-primary-rgb),.15),rgba(var(--admin-accent-rgb),.1));border-color:var(--admin-primary);color:var(--admin-primary);box-shadow:0 4px 20px rgba(var(--admin-primary-rgb),.15)}.rooms-tab-btn.active i{transform:scale(1.1)}.card-header{margin-bottom:var(--admin-space-lg)}.card-header h3{font-size:1.35rem;font-weight:600;margin-bottom:4px}.card-header p{font-size:.85rem;color:var(--admin-text-secondary)}.add-room-form{display:flex;gap:16px;align-items:center;flex-wrap:wrap;margin-bottom:var(--admin-space-xl)}.input-group-modern{display:flex;align-items:center;flex:1;min-width:280px;background:#ffffff05;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:0 16px;height:52px;transition:all .3s ease}.input-group-modern:focus-within{border-color:var(--admin-primary);background:#ffffff0d;box-shadow:0 0 0 3px rgba(var(--admin-primary-rgb),.15)}.input-group-modern .input-icon{color:var(--admin-text-secondary);font-size:1.2rem;margin-right:12px;display:flex;align-items:center}.input-group-modern input{background:transparent;border:none;color:var(--admin-text-primary);font-size:1rem;font-weight:500;width:100%;height:100%;outline:none}.input-group-modern input::placeholder{color:#ffffff4d}.add-btn{display:flex;align-items:center;gap:8px;background:linear-gradient(135deg,var(--admin-primary),var(--admin-accent));color:#fff;border:none;border-radius:12px;padding:0 28px;height:52px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 15px rgba(var(--admin-primary-rgb),.25)}.add-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(var(--admin-primary-rgb),.35);filter:brightness(1.1)}.add-btn:active{transform:translateY(0)}.divider{height:1px;background:#ffffff14;margin:var(--admin-space-xl) 0}.list-section h3{font-size:1.2rem;font-weight:600;margin-bottom:var(--admin-space-md);color:var(--admin-text-secondary)}.rooms-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px}.room-item-card{display:flex;align-items:center;justify-content:space-between;background:#ffffff05;border:1px solid rgba(255,255,255,.05);border-radius:14px;padding:16px;transition:all .3s cubic-bezier(.4,0,.2,1)}.room-item-card:hover{background:#ffffff0d;border-color:rgba(var(--admin-primary-rgb),.2);transform:translateY(-3px);box-shadow:0 6px 20px #00000026}.room-info{display:flex;align-items:center;gap:12px;overflow:hidden}.room-icon{font-size:1.3rem;color:var(--admin-primary);flex-shrink:0}.room-icon.lab-icon{color:var(--admin-accent)}.room-name{font-size:.95rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--admin-text-primary)}.delete-room-btn{background:transparent;border:none;color:var(--admin-danger);opacity:.4;cursor:pointer;padding:6px;border-radius:8px;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.room-item-card:hover .delete-room-btn{opacity:.8}.delete-room-btn:hover{opacity:1!important;background:rgba(var(--admin-danger-rgb),.1);transform:scale(1.1)}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--admin-space-2xl) 0;color:#fff3;text-align:center}.empty-state i{font-size:3rem;margin-bottom:12px}.empty-state p{font-size:1rem}.rooms-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--admin-space-2xl) 0;color:var(--admin-text-secondary)}.rooms-loading .spinner{width:40px;height:40px;border:3px solid rgba(255,255,255,.05);border-top-color:var(--admin-primary);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:16px}@media (max-width: 576px){.add-room-form{flex-direction:column;align-items:stretch}.add-btn{justify-content:center}}.promotions-container{max-width:1250px;margin:0 auto;padding:var(--admin-space-md) var(--admin-space-md) var(--admin-space-2xl);font-family:Outfit,Inter,sans-serif;color:var(--admin-text-primary);position:relative}.promotions-header{margin-bottom:var(--admin-space-xl)}.promotions-header h2{font-size:2.2rem;font-weight:700;background:linear-gradient(135deg,var(--admin-primary),var(--admin-accent));-webkit-background-clip:text;-webkit-text-fill-color:transparent;margin-bottom:6px}.promotions-header .subtitle{font-size:.95rem;color:var(--admin-text-secondary)}.promotions-tabs{display:flex;gap:var(--admin-space-md);margin-bottom:var(--admin-space-lg);border-bottom:1px solid rgba(255,255,255,.08);padding-bottom:12px}.promo-tab-btn{display:flex;align-items:center;gap:10px;padding:12px 24px;background:#ffffff08;border:1px solid rgba(255,255,255,.06);border-radius:12px;color:var(--admin-text-secondary);font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1)}.promo-tab-btn i{font-size:1.1rem;transition:transform .3s ease}.promo-tab-btn:hover{background:#ffffff12;color:var(--admin-text-primary);border-color:#ffffff26}.promo-tab-btn.active{background:linear-gradient(135deg,rgba(var(--admin-primary-rgb),.15),rgba(var(--admin-accent-rgb),.1));border-color:var(--admin-primary);color:var(--admin-primary);box-shadow:0 4px 20px rgba(var(--admin-primary-rgb),.15)}.promo-tab-btn.active i{transform:scale(1.1)}.promo-overlay-loading{position:absolute;top:0;left:0;right:0;bottom:0;background:#000000b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:100;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:20px}.promo-overlay-loading .spinner{width:50px;height:50px;border:4px solid rgba(255,255,255,.05);border-top-color:var(--admin-primary);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:20px}.promote-content-grid{display:grid;grid-template-columns:420px 1fr;gap:var(--admin-space-xl);align-items:start}@media (max-width: 992px){.promote-content-grid{grid-template-columns:1fr}}.glass-card{background:#ffffff08;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.05);border-radius:20px;padding:var(--admin-space-xl);box-shadow:0 8px 32px #0003}.panel-header h3{font-size:1.25rem;font-weight:700;display:flex;align-items:center;gap:10px;margin-bottom:4px}.step-badge{background:var(--admin-primary);color:#fff;width:24px;height:24px;font-size:.85rem;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-weight:700}.panel-header p{font-size:.85rem;color:var(--admin-text-secondary)}.divider-line{height:1px;background:#ffffff14;margin:10px 0}.form-group-modern label{font-size:.85rem;font-weight:600;color:var(--admin-text-secondary)}.form-group-modern select,.form-group-modern input{background:#ffffff05;border:1px solid rgba(255,255,255,.08);border-radius:10px;padding:0 12px;height:46px;color:var(--admin-text-primary);font-size:.95rem;font-weight:500;outline:none;transition:all .3s ease}.form-group-modern select:focus,.form-group-modern input:focus{border-color:var(--admin-primary);background:#ffffff0d;box-shadow:0 0 0 3px rgba(var(--admin-primary-rgb),.15)}.promote-submit-btn{display:flex;align-items:center;justify-content:center;gap:10px;background:linear-gradient(135deg,var(--admin-primary),var(--admin-accent));color:#fff;border:none;border-radius:12px;height:50px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 15px rgba(var(--admin-primary-rgb),.25);margin-top:12px}.promote-submit-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px rgba(var(--admin-primary-rgb),.35);filter:brightness(1.1)}.promote-submit-btn:disabled{opacity:.4;cursor:not-allowed;box-shadow:none}.students-list-card{display:flex;flex-direction:column;height:710px}.list-header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid rgba(255,255,255,.08);padding-bottom:var(--admin-space-md);margin-bottom:var(--admin-space-md)}.list-header h3{font-size:1.35rem;font-weight:600;margin-bottom:4px}.list-header p{font-size:.85rem;color:var(--admin-text-secondary)}.checkbox-select-all{display:flex;align-items:center;gap:8px;background:#ffffff08;padding:8px 16px;border-radius:8px;border:1px solid rgba(255,255,255,.06)}.checkbox-select-all label{font-size:.9rem;font-weight:600;cursor:pointer}.students-scroll-area{flex:1;overflow-y:auto;min-height:300px}.empty-students-state{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:#fff3;text-align:center;padding:40px}.empty-students-state i{font-size:4rem;margin-bottom:16px}.empty-students-state p{font-size:1.05rem;max-width:320px;line-height:1.4}.promotions-students-table{width:100%;border-collapse:collapse;text-align:left}.promotions-students-table th{padding:12px 16px;font-size:.85rem;font-weight:700;text-transform:uppercase;color:var(--admin-text-secondary);border-bottom:1px solid rgba(255,255,255,.08)}.promotions-students-table td{padding:14px 16px;font-size:.95rem;border-bottom:1px solid rgba(255,255,255,.04);color:var(--admin-text-primary);transition:all .2s ease}.promotions-students-table tbody tr{transition:background-color .2s ease}.promotions-students-table tbody tr:hover{background:#ffffff05}.promotions-students-table tbody tr.selected-row{background:rgba(var(--admin-primary-rgb),.04)}.promotions-students-table tbody tr.selected-row td{border-bottom-color:rgba(var(--admin-primary-rgb),.1)}.student-name-col{font-weight:600}.promotions-students-table input[type=checkbox],.checkbox-select-all input[type=checkbox]{width:18px;height:18px;accent-color:var(--admin-primary);cursor:pointer}.archive-table-card{display:flex;flex-direction:column}.table-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--admin-space-xl)}.table-card-header h3{font-size:1.35rem;font-weight:600;margin-bottom:4px}.table-card-header p{font-size:.85rem;color:var(--admin-text-secondary)}.refresh-btn{display:flex;align-items:center;gap:8px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:10px;padding:10px 18px;color:var(--admin-text-primary);font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s ease}.refresh-btn:hover{background:#ffffff14;border-color:#ffffff26}.empty-archives-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--admin-space-2xl) 0;color:#fff3;text-align:center}.empty-archives-state i{font-size:4rem;margin-bottom:16px}.empty-archives-state p{font-size:1.1rem}.archives-table-wrapper{overflow-x:auto}.archives-table{width:100%;border-collapse:collapse;text-align:left}.archives-table th{padding:16px 20px;font-size:.85rem;font-weight:700;text-transform:uppercase;color:var(--admin-text-secondary);border-bottom:1px solid rgba(255,255,255,.08)}.archives-table td{padding:18px 20px;font-size:.95rem;border-bottom:1px solid rgba(255,255,255,.05)}.div-badge{background:#ffffff0d;border:1px solid rgba(255,255,255,.08);padding:6px 12px;border-radius:8px;font-weight:600;font-size:.85rem}.status-pill{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border-radius:20px;font-size:.8rem;font-weight:700;text-transform:uppercase}.status-pill.active{background:#2ecc7126;color:#2ecc71;border:1px solid rgba(46,204,113,.2)}.status-pill.frozen{background:#e67e2226;color:#e67e22;border:1px solid rgba(230,126,34,.2)}.status-pill.archived{background:#3498db26;color:#3498db;border:1px solid rgba(52,152,219,.2)}.action-buttons-group{display:flex;gap:8px;justify-content:flex-end}.archive-action-btn{display:flex;align-items:center;gap:6px;border:none;padding:8px 14px;border-radius:8px;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s ease}.archive-action-btn.reopen-btn{background:#2ecc711a;color:#2ecc71}.archive-action-btn.reopen-btn:hover{background:#2ecc71;color:#fff}.archive-action-btn.freeze-btn{background:#e67e221a;color:#e67e22}.archive-action-btn.freeze-btn:hover{background:#e67e22;color:#fff}.archive-action-btn.archive-btn{background:#3498db1a;color:#3498db}.archive-action-btn.archive-btn:hover{background:#3498db;color:#fff}:root{--admin-primary: var(--primary-accent, #10b981);--admin-primary-dark: var(--primary-accent-dark, #059669);--admin-primary-light: var(--primary-accent-light, #ecfdf5);--admin-bg-main: var(--bg-color, #f3f4f6);--admin-bg-card: var(--card-bg, #ffffff);--admin-bg-secondary: #f9fafb;--admin-bg-tertiary: #f3f4f6;--admin-text-primary: var(--text-main, #111827);--admin-text-secondary: var(--text-muted, #6b7280);--admin-text-tertiary: #9ca3af;--admin-text-on-primary: #ffffff;--admin-success: var(--success-color, #10b981);--admin-warning: var(--warning-color, #f59e0b);--admin-danger: var(--danger-color, #ef4444);--admin-info: #3b82f6;--admin-border: var(--border-color, #e5e7eb);--admin-border-light: #f3f4f6;--admin-shadow-xs: 0 1px 2px 0 rgba(0, 0, 0, .05);--admin-shadow-sm: 0 2px 4px 0 rgba(0, 0, 0, .05);--admin-shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1);--admin-shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1);--admin-shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1);--admin-font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;--admin-text-xs: .75rem;--admin-text-sm: .875rem;--admin-text-base: 1rem;--admin-text-lg: 1.125rem;--admin-text-xl: 1.25rem;--admin-text-2xl: 1.5rem;--admin-text-3xl: 1.875rem;--admin-font-normal: 400;--admin-font-medium: 500;--admin-font-semibold: 600;--admin-font-bold: 700;--admin-space-xs: 4px;--admin-space-sm: 8px;--admin-space-md: 12px;--admin-space-lg: 16px;--admin-space-xl: 24px;--admin-space-2xl: 32px;--admin-radius-sm: 6px;--admin-radius-md: 8px;--admin-radius-lg: 12px;--admin-radius-xl: 16px}*{box-sizing:border-box}.admin-wrapper,.scrollable-wrapper,.admin-content{padding:var(--admin-space-2xl);padding-bottom:250px;background-color:var(--admin-bg-main);min-height:100vh;font-family:var(--admin-font-family)}.page-header{margin-bottom:var(--admin-space-2xl);padding:var(--admin-space-2xl);background:linear-gradient(135deg,var(--admin-primary) 0%,var(--admin-primary-dark) 100%);border-radius:var(--admin-radius-lg);box-shadow:var(--admin-shadow-lg);display:flex;flex-direction:column;gap:var(--admin-space-lg);position:relative;overflow:hidden}.page-header:before{content:"";position:absolute;top:-50px;right:-50px;width:200px;height:200px;background:radial-gradient(circle,rgba(255,255,255,.1) 0%,transparent 70%);border-radius:50%}.page-header h2{margin:0;font-size:var(--admin-text-2xl);font-weight:var(--admin-font-bold);color:var(--admin-text-on-primary);position:relative;z-index:1}.page-header p{margin:0;font-size:var(--admin-text-sm);color:#ffffffe6;opacity:.9;position:relative;z-index:1}.page-header-actions{display:flex;gap:var(--admin-space-md);flex-wrap:wrap;position:relative;z-index:1}.btn,button{font-family:var(--admin-font-family);border:none;border-radius:var(--admin-radius-md);cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;justify-content:center;font-weight:var(--admin-font-semibold);font-size:var(--admin-text-sm)}.btn-primary{background:var(--admin-primary);color:var(--admin-text-on-primary);padding:var(--admin-space-md) var(--admin-space-lg)}.btn-primary:hover:not(:disabled){background:var(--admin-primary-dark);transform:translateY(-2px);box-shadow:var(--admin-shadow-md)}.btn-secondary{background:var(--admin-bg-card);color:var(--admin-text-primary);border:1px solid var(--admin-border);padding:var(--admin-space-md) var(--admin-space-lg)}.btn-secondary:hover:not(:disabled){background:var(--admin-bg-secondary);border-color:var(--admin-primary)}.btn-danger{background:var(--admin-danger);color:var(--admin-text-on-primary);padding:var(--admin-space-md) var(--admin-space-lg)}.btn-danger:hover:not(:disabled){background:#dc2626;transform:translateY(-2px)}.btn-sm{padding:var(--admin-space-sm) var(--admin-space-md);font-size:var(--admin-text-xs)}.btn-icon{width:40px;height:40px;padding:0;display:flex;align-items:center;justify-content:center;border-radius:var(--admin-radius-md);background:var(--admin-bg-secondary);border:1px solid var(--admin-border)}.btn-icon:hover{background:var(--admin-primary-light);color:var(--admin-primary)}button:disabled,.btn:disabled{opacity:.5;cursor:not-allowed}.card,.card-item{background:var(--admin-bg-card);border:1px solid var(--admin-border);border-radius:var(--admin-radius-lg);box-shadow:var(--admin-shadow-sm);transition:all .2s ease}.card{padding:var(--admin-space-xl)}.card:hover{box-shadow:var(--admin-shadow-md);transform:translateY(-2px)}.form-group{margin-bottom:var(--admin-space-lg);display:flex;flex-direction:column;gap:var(--admin-space-sm)}label{font-weight:var(--admin-font-semibold);font-size:var(--admin-text-sm);color:var(--admin-text-primary);display:block}input[type=text],input[type=email],input[type=password],input[type=number],input[type=date],input[type=time],input[type=search],select,textarea{width:100%;padding:var(--admin-space-md) var(--admin-space-lg);border:1px solid var(--admin-border);border-radius:var(--admin-radius-md);font-size:var(--admin-text-sm);font-family:var(--admin-font-family);background:var(--admin-bg-card);color:var(--admin-text-primary);transition:all .2s ease}input[type=text]:focus,input[type=email]:focus,input[type=password]:focus,input[type=number]:focus,input[type=date]:focus,input[type=time]:focus,input[type=search]:focus,select:focus,textarea:focus{outline:none;border-color:var(--admin-primary);box-shadow:0 0 0 3px var(--admin-primary-light)}textarea{resize:vertical;min-height:100px}.table-wrapper{background:var(--admin-bg-card);border-radius:var(--admin-radius-lg);border:1px solid var(--admin-border);overflow:hidden;box-shadow:var(--admin-shadow-sm)}.table{width:100%;border-collapse:collapse;font-size:var(--admin-text-sm)}.table thead{background:var(--admin-bg-secondary);border-bottom:1px solid var(--admin-border)}.table th{padding:var(--admin-space-lg);text-align:left;font-weight:var(--admin-font-semibold);color:var(--admin-text-primary);white-space:nowrap}.table td{padding:var(--admin-space-lg);border-bottom:1px solid var(--admin-border-light)}.table tbody tr:hover{background:var(--admin-bg-secondary)}.table tbody tr:last-child td{border-bottom:none}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.modal-overlay .modal{display:block!important;position:relative!important;top:auto!important;left:auto!important;z-index:auto!important;width:90%!important;height:auto!important;overflow-x:visible!important;background:var(--admin-bg-card);border-radius:var(--admin-radius-lg);box-shadow:var(--admin-shadow-xl);max-width:500px;max-height:90vh;overflow-y:auto;animation:slideUp .3s ease}.modal-header{padding:var(--admin-space-xl);border-bottom:1px solid var(--admin-border);display:flex;justify-content:space-between;align-items:center}.modal-header h3{margin:0;font-size:var(--admin-text-xl);color:var(--admin-text-primary)}.modal-body{padding:var(--admin-space-xl)}.modal-footer{padding:var(--admin-space-xl);border-top:1px solid var(--admin-border);display:flex;gap:var(--admin-space-md);justify-content:flex-end}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.alert{padding:var(--admin-space-lg);border-radius:var(--admin-radius-md);margin-bottom:var(--admin-space-lg);display:flex;gap:var(--admin-space-md);align-items:flex-start}.alert-success{background:#ecfdf5;border:1px solid #6ee7b7;color:#047857}.alert-danger{background:#fef2f2;border:1px solid #fca5a5;color:#991b1b}.alert-warning{background:#fffbeb;border:1px solid #fde68a;color:#92400e}.alert-info{background:#eff6ff;border:1px solid #93c5fd;color:#1e40af}.grid-2{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--admin-space-xl)}.grid-3{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--admin-space-xl)}.grid-4{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--admin-space-lg)}.text-center{text-align:center}.mt-0{margin-top:0}.mt-sm{margin-top:var(--admin-space-sm)}.mt-md{margin-top:var(--admin-space-md)}.mt-lg{margin-top:var(--admin-space-lg)}.mt-xl{margin-top:var(--admin-space-xl)}.mb-0{margin-bottom:0}.mb-sm{margin-bottom:var(--admin-space-sm)}.mb-md{margin-bottom:var(--admin-space-md)}.mb-lg{margin-bottom:var(--admin-space-lg)}.mb-xl{margin-bottom:var(--admin-space-xl)}.gap-sm{gap:var(--admin-space-sm)}.gap-md{gap:var(--admin-space-md)}.gap-lg{gap:var(--admin-space-lg)}.flex{display:flex}.flex-col{flex-direction:column}.flex-between{justify-content:space-between}.flex-center{justify-content:center;align-items:center}.items-center{align-items:center}.opacity-50{opacity:.5}.opacity-75{opacity:.75}.cursor-pointer{cursor:pointer}.cursor-default{cursor:default}@media (max-width: 768px){.admin-wrapper,.scrollable-wrapper,.admin-content{padding:var(--admin-space-lg);padding-bottom:180px}.page-header{padding:var(--admin-space-lg)}.page-header h2{font-size:var(--admin-text-xl)}.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}.modal{width:95%}}@media (max-width: 640px){.page-header-actions{flex-direction:column}.page-header-actions button,.page-header-actions .btn{width:100%}.table{font-size:var(--admin-text-xs)}.table th,.table td{padding:var(--admin-space-md)}}.admin-page .admin-wrapper,.admin-page .scrollable-wrapper,.admin-page .admin-content{max-width:1680px;margin:0 auto;padding:20px 20px 180px;background:linear-gradient(180deg,color-mix(in srgb,var(--primary-accent-light, #ecfdf5) 30%,#ffffff 70%),color-mix(in srgb,var(--primary-accent-light, #ecfdf5) 14%,#ffffff 86%));min-height:100%}.admin-page .page-header{margin-bottom:14px;padding:16px 18px;border-radius:14px;background:linear-gradient(135deg,var(--card-bg, #ffffff) 0%,color-mix(in srgb,var(--primary-accent-light, #ecfdf5) 24%,#ffffff 76%) 100%);border:1px solid var(--border-color, #dbe5f1);box-shadow:0 10px 24px #0206170f;gap:8px}.admin-page .page-header:before{display:none}.admin-page .page-header h2{color:var(--text-main, #0f172a);font-size:1.58rem}.admin-page .page-header p{color:var(--text-muted, #475569);opacity:1;font-size:.94rem}.admin-page .card,.admin-page .card-item{border:1px solid var(--border-color, #dbe5f1);border-radius:14px;box-shadow:0 10px 24px #0206170f}.admin-page .btn-primary,.admin-page button.btn-primary{background:linear-gradient(135deg,var(--primary-accent, #2563eb) 0%,var(--primary-accent-dark, #1d4ed8) 100%)!important;color:var(--text-on-primary, #ffffff)!important}.admin-page .btn-primary:hover,.admin-page button.btn-primary:hover{background:linear-gradient(135deg,var(--primary-accent-dark, #1d4ed8) 0%,color-mix(in srgb,var(--primary-accent-dark, #1d4ed8) 80%,#000 20%) 100%)!important}@media (max-width: 768px){.admin-page .admin-wrapper,.admin-page .scrollable-wrapper,.admin-page .admin-content{padding:12px 12px 120px}.admin-page .page-header{padding:13px 14px;gap:6px}.admin-page .page-header h2{font-size:1.35rem}}.academic-year-management{max-width:1400px;margin:0 auto;padding-bottom:var(--admin-space-2xl);display:flex;flex-direction:column;gap:var(--admin-space-xl)}.academic-year-management .page-header{background:linear-gradient(135deg,var(--admin-bg-card) 0%,var(--admin-bg-secondary) 100%);border:1px solid var(--admin-border);border-radius:var(--admin-radius-lg);padding:var(--admin-space-xl);display:flex;justify-content:space-between;align-items:center;box-shadow:var(--admin-shadow-sm);flex-wrap:wrap;gap:var(--admin-space-lg)}.academic-year-management .page-header h2{font-size:1.75rem;font-weight:800;background:linear-gradient(135deg,var(--admin-primary) 0%,#4f46e5 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;margin:0 0 var(--admin-space-xs) 0}.academic-year-management .page-header p{color:var(--admin-text-secondary);font-size:var(--admin-text-sm);margin:0}.ay-header-actions{display:flex;gap:var(--admin-space-md)}.ay-header-actions button{display:inline-flex;align-items:center;gap:8px;font-weight:var(--admin-font-semibold);box-shadow:0 4px 10px #4f46e540;transition:all .2s ease}.ay-header-actions button:hover{transform:translateY(-2px);box-shadow:0 6px 14px #4f46e559}.active-year-hero{background:linear-gradient(135deg,#4f46e5,#2563eb);border-radius:var(--admin-radius-lg);color:#fff;padding:var(--admin-space-2xl);display:flex;justify-content:space-between;align-items:center;box-shadow:var(--admin-shadow-xl),0 10px 20px -5px #3b82f64d;position:relative;overflow:hidden;border:1px solid rgba(255,255,255,.1);transition:transform .3s ease}.active-year-hero:hover{transform:translateY(-2px)}.active-year-hero:after{content:"";position:absolute;right:-50px;bottom:-50px;width:250px;height:250px;background:radial-gradient(circle,rgba(255,255,255,.15) 0%,transparent 70%);border-radius:50%;pointer-events:none}.active-year-info{z-index:1}.active-year-info h3{margin:0 0 var(--admin-space-sm) 0;font-size:var(--admin-text-sm);font-weight:var(--admin-font-bold);text-transform:uppercase;letter-spacing:.1em;color:#ffffffe6}.active-year-name{font-size:2.8rem;font-weight:800;margin:0;line-height:1.1;letter-spacing:-.02em;text-shadow:0 2px 4px rgba(0,0,0,.15)}.active-year-details{display:flex;gap:var(--admin-space-2xl);margin-top:var(--admin-space-xl);background:#ffffff14;padding:var(--admin-space-md) var(--admin-space-xl);border-radius:var(--admin-radius-md);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border:1px solid rgba(255,255,255,.1)}.active-detail-item{display:flex;flex-direction:column;gap:4px}.active-detail-label{font-size:.7rem;font-weight:var(--admin-font-bold);text-transform:uppercase;letter-spacing:.05em;color:#ffffffb3}.active-detail-value{font-size:var(--admin-text-sm);font-weight:var(--admin-font-semibold);color:#fff}.active-year-actions{z-index:1}.active-year-actions button{background:#fff;color:#ef4444;border:1px solid #fee2e2;font-weight:700;box-shadow:0 4px 12px #ef444426;transition:all .2s ease}.active-year-actions button:hover{background:#fef2f2;color:#dc2626;transform:scale(1.02);box-shadow:0 6px 16px #ef444440}.years-timeline-section.card{padding:var(--admin-space-xl);border-radius:var(--admin-radius-lg);border:1px solid var(--admin-border);background:var(--admin-bg-card);box-shadow:var(--admin-shadow-md)}.years-timeline-section .section-title{font-size:1.25rem;font-weight:var(--admin-font-bold);color:var(--admin-text-primary);margin-bottom:var(--admin-space-lg)}.academic-year-management .table-wrapper{border-radius:var(--admin-radius-md);border:1px solid var(--admin-border);overflow:hidden;box-shadow:var(--admin-shadow-sm)}.academic-year-management .table{width:100%;border-collapse:collapse;table-layout:auto}.academic-year-management .table th{background:var(--admin-bg-secondary);color:var(--admin-text-primary);font-weight:700;padding:var(--admin-space-lg) var(--admin-space-xl);border-bottom:2px solid var(--admin-border);text-transform:uppercase;font-size:.75rem;letter-spacing:.05em;white-space:nowrap}.academic-year-management .table th:nth-child(1),.academic-year-management .table td:nth-child(1){width:25%}.academic-year-management .table th:nth-child(2),.academic-year-management .table td:nth-child(2){width:15%}.academic-year-management .table th:nth-child(3),.academic-year-management .table td:nth-child(3){width:30%;white-space:nowrap}.academic-year-management .table th:nth-child(4),.academic-year-management .table td:nth-child(4){width:15%}.academic-year-management .table th:nth-child(5),.academic-year-management .table td:nth-child(5){width:15%}.academic-year-management .table td{padding:var(--admin-space-lg) var(--admin-space-xl);border-bottom:1px solid var(--admin-border-light);color:var(--admin-text-primary);font-size:var(--admin-text-sm);vertical-align:middle}.academic-year-management .table tbody tr{transition:background-color .2s ease}.academic-year-management .table tbody tr:hover{background-color:var(--admin-bg-secondary)!important}.ay-badge{display:inline-flex;align-items:center;padding:4px 12px;border-radius:9999px;font-size:.7rem;font-weight:var(--admin-font-bold);text-transform:uppercase;letter-spacing:.05em}.ay-badge-active{background-color:#ecfdf5;color:#059669;border:1px solid #a7f3d0}.ay-badge-completed{background-color:#f8fafc;color:#64748b;border:1px solid #cbd5e1}.ay-stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--admin-space-xl)}.ay-stat-card{background:var(--admin-bg-card);border:1px solid var(--admin-border);border-radius:var(--admin-radius-lg);padding:var(--admin-space-xl);display:flex;align-items:center;gap:var(--admin-space-xl);box-shadow:var(--admin-shadow-sm);transition:transform .2s ease,box-shadow .2s ease}.ay-stat-card:hover{transform:translateY(-2px);box-shadow:var(--admin-shadow-md)}.ay-stat-icon{width:54px;height:54px;border-radius:12px;background:linear-gradient(135deg,#4f46e51a,#3b82f61a);color:var(--admin-primary);display:flex;align-items:center;justify-content:center;font-size:1.5rem;box-shadow:inset 0 2px 4px #4f46e50d}.ay-stat-icon.warning-theme{background:linear-gradient(135deg,#f59e0b1a,#d977061a);color:#d97706}.ay-stat-icon.info-theme{background:linear-gradient(135deg,#3b82f61a,#1d4ed81a);color:#1d4ed8}.ay-stat-info{display:flex;flex-direction:column;gap:2px;flex:1}.ay-stat-value{font-size:1.95rem;font-weight:800;color:var(--admin-text-primary);line-height:1.1;letter-spacing:-.01em}.ay-stat-label{font-size:var(--admin-text-xs);color:var(--admin-text-secondary);font-weight:600}.ay-progress-container{width:100%;background-color:var(--admin-bg-secondary);border-radius:9999px;height:8px;overflow:hidden;margin-top:var(--admin-space-sm);border:1px solid var(--admin-border)}.ay-progress-bar{height:100%;background:linear-gradient(90deg,var(--admin-primary) 0%,#4f46e5 100%);border-radius:9999px;transition:width .5s cubic-bezier(.4,0,.2,1)}.analytics-section{background:var(--admin-bg-card);border:1px solid var(--admin-border);border-radius:var(--admin-radius-lg);padding:var(--admin-space-2xl);box-shadow:var(--admin-shadow-md)}.analytics-header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--admin-border);padding-bottom:var(--admin-space-lg);margin-bottom:var(--admin-space-2xl);flex-wrap:wrap;gap:var(--admin-space-lg)}.analytics-header .section-title{font-size:1.25rem;font-weight:var(--admin-font-bold);color:var(--admin-text-primary);margin:0}.analytics-tabs{display:flex;background:var(--admin-bg-secondary);padding:4px;border-radius:12px;border:1px solid var(--admin-border)}.analytics-tab-btn{background:transparent;border:none;padding:8px 16px;color:var(--admin-text-secondary);font-weight:var(--admin-font-semibold);font-size:var(--admin-text-sm);cursor:pointer;border-radius:8px;transition:all .2s cubic-bezier(.4,0,.2,1);display:inline-flex;align-items:center;gap:6px}.analytics-tab-btn:hover{color:var(--admin-primary)}.analytics-tab-btn.active{background-color:var(--admin-bg-card);color:var(--admin-primary);box-shadow:var(--admin-shadow-sm)}.inline-radio-group{display:flex;gap:var(--admin-space-xl);margin-top:var(--admin-space-xs)}.radio-label{display:flex;align-items:center;gap:var(--admin-space-sm);cursor:pointer;font-weight:var(--admin-font-normal)}.custom-scheme-input{margin-top:var(--admin-space-sm);animation:fadeIn .2s ease}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--admin-space-2xl);text-align:center;color:var(--admin-text-secondary);background:var(--admin-bg-secondary);border:2px dashed var(--admin-border);border-radius:var(--admin-radius-lg)}.empty-state-icon{font-size:3.5rem;margin-bottom:var(--admin-space-md);color:var(--admin-text-tertiary)}.empty-state h3{margin:0 0 var(--admin-space-xs) 0;font-size:1.2rem;color:var(--admin-text-primary);font-weight:var(--admin-font-bold)}.empty-state p{margin:0;font-size:var(--admin-text-sm);max-width:400px}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:100px 0;color:var(--admin-text-secondary)}.ay-spinner{width:44px;height:44px;border:4px solid var(--admin-border);border-top-color:var(--admin-primary);border-radius:50%;animation:spin .8s linear infinite;margin-bottom:var(--admin-space-lg)}@keyframes fadeIn{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 1200px){.ay-stats-grid{grid-template-columns:repeat(2,1fr);gap:var(--admin-space-lg)}}@media (max-width: 768px){.academic-year-management .page-header{flex-direction:column;align-items:flex-start;padding:var(--admin-space-lg)}.ay-header-actions,.ay-header-actions button{width:100%}.active-year-hero{flex-direction:column;align-items:flex-start;gap:var(--admin-space-lg);padding:var(--admin-space-xl)}.active-year-actions,.active-year-actions button{width:100%}.active-year-details{flex-direction:column;gap:var(--admin-space-sm);width:100%}.analytics-header{flex-direction:column;align-items:flex-start}.analytics-tabs{width:100%;overflow-x:auto;padding:var(--admin-space-xs)}.academic-year-management .table th,.academic-year-management .table td{padding:var(--admin-space-md)}}@media (max-width: 576px){.ay-stats-grid{grid-template-columns:1fr}}.academic-year-management .table tbody tr.selected-row{background-color:var(--admin-primary-light)!important}.analytics-section .table th,.analytics-section .table td{width:25%}.ay-faculty-row-clickable{transition:all .2s ease-in-out}.ay-faculty-row-clickable:hover{background-color:var(--admin-bg-secondary)!important;transform:translateY(-1px);box-shadow:0 4px 6px -1px #0000000d,0 2px 4px -1px #00000008}.ay-faculty-row-clickable strong:hover{color:var(--admin-primary-dark)!important}.drilldown-container{padding:var(--admin-space-xl) var(--admin-space-2xl);display:flex;flex-direction:column;gap:var(--admin-space-xl);animation:fadeIn .4s ease-out}.drilldown-top-bar{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--admin-space-xs)}.drilldown-back-btn{background:transparent;border:1px solid var(--admin-border);padding:10px 18px;border-radius:var(--admin-radius-md);color:var(--admin-text-primary);font-weight:var(--admin-font-semibold);cursor:pointer;display:inline-flex;align-items:center;gap:8px;transition:all .2s ease-in-out}.drilldown-back-btn:hover{background:var(--admin-bg-secondary);border-color:var(--admin-text-secondary)}.drilldown-print-btn{background:linear-gradient(135deg,var(--admin-primary) 0%,#4f46e5 100%);color:#fff;border:none;padding:10px 20px;border-radius:var(--admin-radius-md);font-weight:var(--admin-font-semibold);cursor:pointer;display:inline-flex;align-items:center;gap:8px;box-shadow:0 4px 12px #4f46e526;transition:all .2s ease-in-out}.drilldown-print-btn:hover{transform:translateY(-1px);box-shadow:0 6px 16px #4f46e540;filter:brightness(1.05)}.drilldown-loading-container,.drilldown-error-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 40px;text-align:center;background:var(--admin-bg-card);border-radius:var(--admin-radius-lg);border:1px solid var(--admin-border);margin:var(--admin-space-2xl);box-shadow:var(--admin-shadow-md);min-height:300px}.drilldown-spinner{width:45px;height:45px;border:4px solid var(--admin-border);border-top:4px solid var(--admin-primary);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:20px}.drilldown-error-container i{font-size:3.5rem;color:#ef4444;margin-bottom:20px}.btn-back-error{margin-top:20px;background-color:var(--admin-primary);color:#fff;border:none;padding:10px 24px;border-radius:var(--admin-radius-md);cursor:pointer;font-weight:600}.drilldown-profile-card{background:linear-gradient(135deg,var(--admin-bg-card) 0%,rgba(243,244,246,.4) 100%);border:1px solid var(--admin-border);border-radius:var(--admin-radius-lg);padding:var(--admin-space-xl) var(--admin-space-2xl);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--admin-space-xl);box-shadow:var(--admin-shadow-sm)}.profile-main-info{display:flex;align-items:center;gap:var(--admin-space-xl)}.profile-avatar{width:70px;height:70px;border-radius:20px;background:linear-gradient(135deg,#4f46e51a,#3b82f61a);border:1px solid rgba(79,70,229,.2);display:flex;align-items:center;justify-content:center;font-size:2.2rem;color:var(--admin-primary)}.profile-name{font-size:1.85rem;font-weight:800;color:var(--admin-text-primary);margin:0 0 6px;letter-spacing:-.02em}.profile-sub-details{display:flex;flex-wrap:wrap;gap:12px;color:var(--admin-text-secondary);font-size:var(--admin-text-sm)}.profile-sub-details span{display:flex;align-items:center;gap:6px}.profile-sub-details i{color:var(--admin-primary)}.divider-dot{color:var(--admin-border)}.profile-stats-row{display:flex;gap:var(--admin-space-xl);align-items:center}.profile-stat-item{display:flex;flex-direction:column;align-items:center;min-width:90px}.stat-num{font-size:1.9rem;font-weight:800;color:var(--admin-text-primary);line-height:1}.stat-num.completed{color:#16a34a}.stat-lbl{font-size:.72rem;color:var(--admin-text-secondary);text-transform:uppercase;font-weight:700;margin-top:6px;letter-spacing:.05em;text-align:center}.stat-circle-wrap{position:relative;width:50px;height:50px;display:flex;align-items:center;justify-content:center}.stat-numpct{position:absolute;font-size:.8rem;font-weight:800;color:var(--admin-text-primary);z-index:2}.drilldown-section-card{background:var(--admin-bg-card);border:1px solid var(--admin-border);border-radius:var(--admin-radius-lg);padding:var(--admin-space-2xl);box-shadow:var(--admin-shadow-sm);display:flex;flex-direction:column;gap:var(--admin-space-lg)}.section-card-title{font-size:1.25rem;font-weight:var(--admin-font-bold);color:var(--admin-text-primary);margin:0;display:flex;align-items:center;gap:10px;border-bottom:1px solid var(--admin-border);padding-bottom:var(--admin-space-md)}.section-card-title i{color:var(--admin-primary)}.table-responsive{width:100%;overflow-x:auto;border-radius:var(--admin-radius-md);border:1px solid var(--admin-border)}.drilldown-table{width:100%;border-collapse:collapse;text-align:left;font-size:var(--admin-text-sm)}.drilldown-table th{background-color:var(--admin-bg-secondary);color:var(--admin-text-secondary);font-weight:700;padding:14px 18px;text-transform:uppercase;font-size:.72rem;letter-spacing:.05em;border-bottom:2px solid var(--admin-border)}.drilldown-table td{padding:16px 18px;border-bottom:1px solid var(--admin-border);color:var(--admin-text-primary);vertical-align:middle}.drilldown-table tbody tr{transition:background-color .15s ease-in-out}.drilldown-table tbody tr:hover{background-color:#f3f4f666}.empty-table-text{text-align:center;color:var(--admin-text-secondary);padding:40px!important;font-style:italic}.directory-table td{font-size:.88rem}.subject-detail-cell{display:flex;flex-direction:column;gap:2px}.subject-name{font-weight:600;color:var(--admin-text-primary)}.subject-code{font-size:.75rem;color:var(--admin-text-secondary);background:var(--admin-bg-secondary);padding:1px 6px;border-radius:4px;width:fit-content}.filter-controls-row{display:flex;justify-content:space-between;align-items:center;gap:var(--admin-space-lg);flex-wrap:wrap;margin-bottom:var(--admin-space-sm)}.search-input-wrap i{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--admin-text-secondary);font-size:1.05rem}.search-input-wrap input{width:100%;padding:10px 14px 10px 42px;border:1px solid var(--admin-border);border-radius:var(--admin-radius-md);font-size:var(--admin-text-sm);background-color:var(--admin-bg-card);transition:all .2s ease-in-out}.search-input-wrap input:focus{border-color:var(--admin-primary);box-shadow:0 0 0 3px #4f46e51a;outline:none}.filter-select-group{display:flex;gap:var(--admin-space-md);flex-wrap:wrap}.filter-item{display:flex;flex-direction:column;gap:4px}.filter-item label{font-size:.72rem;font-weight:700;text-transform:uppercase;color:var(--admin-text-secondary);letter-spacing:.02em}.filter-item select{padding:9px 12px;border:1px solid var(--admin-border);border-radius:var(--admin-radius-md);font-size:var(--admin-text-sm);background-color:var(--admin-bg-card);min-width:150px;cursor:pointer;transition:border-color .2s ease-in-out}.filter-item select:focus{border-color:var(--admin-primary);outline:none}.progress-bar-container{display:flex;align-items:center;gap:10px;width:100%;max-width:200px}.progress-bar-val{font-weight:700;min-width:36px;font-size:.85rem}.progress-bar-track{flex:1;height:6px;background-color:var(--admin-border);border-radius:99px;overflow:hidden}.progress-bar-fill{height:100%;background:linear-gradient(90deg,#10b981,#059669);border-radius:99px;transition:width .4s ease-out}.progress-bar-track.practical .progress-bar-fill{background:linear-gradient(90deg,#3b82f6,#1d4ed8)}.pending-count-badge{font-weight:600;font-size:.8rem;padding:4px 10px;border-radius:99px;display:inline-block}.pending-count-badge.has-pending{background-color:#f59e0b1a;color:#d97706}.pending-count-badge.no-pending{background-color:#10b9811a;color:#059669}.ciaan-type-badge{font-size:.78rem;font-weight:700;padding:3px 8px;border-radius:6px;display:inline-block}.ciaan-type-badge.theory{background-color:#4f46e51a;color:var(--admin-primary)}.ciaan-type-badge.practical{background-color:#3b82f61a;color:#1d4ed8}.expt-count{font-weight:600;color:var(--admin-text-secondary)}.status-badge-val{font-size:.78rem;font-weight:700;padding:4px 10px;border-radius:99px;display:inline-block;text-transform:capitalize}.status-badge-val.active{background-color:#3b82f61a;color:#1d4ed8}.status-badge-val.completed{background-color:#10b9811a;color:#059669}.status-badge-val.archived{background-color:#6b72801a;color:#4b5563}.action-buttons-wrap{display:flex;gap:8px}.btn-action{padding:6px 12px;border-radius:6px;font-size:.8rem;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;gap:4px;transition:all .15s ease-in-out}.btn-action.view{background-color:transparent;border:1px solid var(--admin-primary);color:var(--admin-primary)}.btn-action.view:hover{background-color:var(--admin-primary);color:#fff}.btn-action.print{background-color:transparent;border:1px solid var(--admin-border);color:var(--admin-text-primary)}.btn-action.print:hover{background-color:var(--admin-bg-secondary);border-color:var(--admin-text-secondary)}.btn-action.delete{background-color:transparent;border:1px solid #ef4444;color:#ef4444}.delete-modal-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background-color:#11182799;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:9999;animation:fadeIn .2s ease-out}.delete-modal-card{background:var(--admin-bg-card);border:1px solid var(--admin-border);border-radius:var(--admin-radius-lg);padding:var(--admin-space-2xl);width:100%;max-width:520px;box-shadow:0 20px 25px -5px #00000026,0 10px 10px -5px #0000000a;display:flex;flex-direction:column;gap:var(--admin-space-lg);animation:scaleIn .25s cubic-bezier(.34,1.56,.64,1)}.delete-modal-header{display:flex;align-items:center;gap:14px}.danger-icon-wrapper{width:48px;height:48px;border-radius:12px;background:linear-gradient(135deg,#ef44441a,#dc26261a);color:#dc2626;display:flex;align-items:center;justify-content:center;font-size:1.5rem}.delete-modal-header h3{font-size:1.3rem;font-weight:700;color:var(--admin-text-primary);margin:0}.delete-modal-body{display:flex;flex-direction:column;gap:12px;color:var(--admin-text-primary);font-size:.92rem;line-height:1.5}.warning-desc{color:var(--admin-text-secondary)}.delete-impact-list{list-style:none;padding:0;margin:4px 0;display:flex;flex-direction:column;gap:8px}.delete-impact-list li{display:flex;align-items:center;gap:8px;font-size:.85rem;color:var(--admin-text-primary)}.delete-impact-list li i{color:#dc2626}.alert-badge-danger{background-color:#ef444414;border:1px solid rgba(239,68,68,.2);color:#b91c1c;padding:8px 12px;border-radius:6px;font-weight:700;font-size:.82rem;display:flex;align-items:center;gap:8px;margin-top:6px}.delete-modal-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:var(--admin-space-sm)}.btn-modal-cancel{background:transparent;border:1px solid var(--admin-border);padding:10px 20px;border-radius:var(--admin-radius-md);font-weight:600;cursor:pointer;color:var(--admin-text-primary);transition:background-color .15s ease-in-out}.btn-modal-cancel:hover{background-color:var(--admin-bg-secondary)}.btn-modal-delete{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;border:none;padding:10px 20px;border-radius:var(--admin-radius-md);font-weight:600;cursor:pointer;box-shadow:0 4px 12px #dc262626;display:inline-flex;align-items:center;gap:8px;transition:all .15s ease-in-out}.btn-modal-delete:hover{transform:translateY(-1px);box-shadow:0 6px 16px #dc262640;filter:brightness(1.05)}.spinner-sm{width:14px;height:14px;border:2px solid rgba(255,255,255,.3);border-top:2px solid #fff;border-radius:50%;animation:spin .8s linear infinite;display:inline-block}@media print{body{background:#fff!important;color:#000!important}.drilldown-top-bar,.drilldown-back-btn,.drilldown-print-btn,.filter-controls-row,.directory-table,.btn-action,.sidebar,.header,.main-header,.app-sidebar,.admin-sidebar{display:none!important}.drilldown-container{padding:0!important;margin:0!important}.drilldown-profile-card,.drilldown-section-card{border:none!important;background:transparent!important;box-shadow:none!important;padding:0!important;margin-bottom:25px}.drilldown-table{border:1px solid #000!important}.drilldown-table th,.drilldown-table td{border:1px solid #000!important;color:#000!important;padding:8px 10px!important}.drilldown-table th{background-color:#f3f4f6!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}}.admin-ciaan-print-wrapper{min-height:100vh;background-color:#f3f4f6;padding-top:75px}.admin-toolbar{position:fixed;top:0;left:0;right:0;height:70px;background:#ffffffd9;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--admin-border, #e5e7eb);display:flex;justify-content:space-between;align-items:center;padding:0 var(--admin-space-2xl, 24px);z-index:1000;box-shadow:0 4px 6px -1px #0000000d,0 2px 4px -1px #00000008}.toolbar-left{display:flex;align-items:center;gap:20px}.toolbar-info{font-size:.95rem;color:var(--admin-text-primary, #111827);border-left:1px solid var(--admin-border, #e5e7eb);padding-left:20px}.toolbar-right{display:flex;gap:12px}.toolbar-btn{padding:10px 18px;border-radius:var(--admin-radius-md, 8px);font-weight:600;font-size:.88rem;cursor:pointer;display:inline-flex;align-items:center;gap:8px;transition:all .15s ease-in-out}.btn-back{background:transparent;border:1px solid var(--admin-border, #e5e7eb);color:var(--admin-text-primary, #111827)}.btn-back:hover{background-color:var(--admin-bg-secondary, #f9fafb);border-color:var(--admin-text-secondary, #4b5563)}.btn-print{background:linear-gradient(135deg,var(--admin-primary, #4f46e5) 0%,#3b82f6 100%);color:#fff;border:none;box-shadow:0 4px 10px #4f46e526}.btn-print:hover{transform:translateY(-1px);box-shadow:0 6px 14px #4f46e540;filter:brightness(1.05)}.btn-pdf{background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;box-shadow:0 4px 10px #10b98126}.btn-pdf:hover{transform:translateY(-1px);box-shadow:0 6px 14px #10b98140;filter:brightness(1.05)}.btn-delete{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;border:none;box-shadow:0 4px 10px #dc262626}.btn-delete:hover{transform:translateY(-1px);box-shadow:0 6px 14px #dc262640;filter:brightness(1.05)}.view-wrapper-loading,.view-wrapper-error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;background-color:#fff;margin:40px auto;max-width:600px;border-radius:12px;border:1px solid #e5e7eb;padding:40px;box-shadow:0 10px 15px -3px #0000000d}.view-spinner{width:50px;height:50px;border:4px solid #f3f4f6;border-top:4px solid var(--admin-primary, #4f46e5);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:20px}.view-wrapper-error i{font-size:3.5rem;color:#ef4444;margin-bottom:20px}.print-content-container{max-width:1200px;margin:0 auto 50px;background:#fff;border-radius:8px;box-shadow:0 4px 6px -1px #0000000d,0 2px 4px -1px #00000008}@media print{.admin-toolbar{display:none!important}.admin-ciaan-print-wrapper{padding-top:0!important;background-color:#fff!important}.print-content-container{box-shadow:none!important;margin:0!important;max-width:100%!important;border-radius:0!important}}.dept-analytics-container{padding:var(--admin-space-xl) var(--admin-space-2xl);display:flex;flex-direction:column;gap:var(--admin-space-xl);animation:fadeIn .4s ease-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.dept-header-section{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--admin-space-xs);flex-wrap:wrap;gap:12px}.portal-badge{display:inline-block;background-color:var(--admin-primary-light, #e0e7ff);color:var(--admin-primary, #4f46e5);font-weight:700;font-size:.72rem;padding:4px 10px;border-radius:99px;text-transform:uppercase;letter-spacing:.05em;margin-bottom:6px}.dept-dashboard-title{font-size:1.8rem;font-weight:800;color:var(--admin-text-primary, #111827);margin:0;letter-spacing:-.02em}.btn-print-reports{background:linear-gradient(135deg,var(--admin-primary, #4f46e5) 0%,#3b82f6 100%);color:#fff;border:none;padding:10px 18px;border-radius:var(--admin-radius-md, 8px);font-weight:600;cursor:pointer;display:inline-flex;align-items:center;gap:8px;box-shadow:0 4px 10px #4f46e526;transition:all .2s ease}.btn-print-reports:hover{transform:translateY(-1px);box-shadow:0 6px 14px #4f46e540;filter:brightness(1.05)}.dept-loading-wrapper,.dept-error-wrapper{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 30px;text-align:center;background:var(--admin-bg-card, #fff);border-radius:var(--admin-radius-lg, 12px);border:1px solid var(--admin-border, #e5e7eb);margin:40px auto;max-width:500px;box-shadow:var(--admin-shadow-md, 0 4px 6px -1px rgba(0, 0, 0, .05));min-height:250px}.dept-spinner{width:40px;height:40px;border:4px solid var(--admin-border, #e5e7eb);border-top:4px solid var(--admin-primary, #4f46e5);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:20px}.dept-error-wrapper i{font-size:3rem;color:#ef4444;margin-bottom:16px}.btn-retry{margin-top:18px;background-color:var(--admin-primary, #4f46e5);color:#fff;border:none;padding:8px 20px;border-radius:6px;cursor:pointer;font-weight:600;transition:opacity .15s ease}.btn-retry:hover{opacity:.9}.dept-stats-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:var(--admin-space-lg)}.dept-stat-card{border:1px solid var(--admin-border, #e5e7eb);border-radius:var(--admin-radius-lg, 12px);padding:var(--admin-space-xl, 20px);display:flex;align-items:center;gap:16px;box-shadow:var(--admin-shadow-sm, 0 1px 2px 0 rgba(0, 0, 0, .05))}.dept-stat-card.glassmorphism{background:linear-gradient(135deg,var(--admin-bg-card, #fff) 0%,rgba(243,244,246,.3) 100%)}.stat-icon-wrapper{width:46px;height:46px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.35rem}.stat-icon-wrapper.primary-theme{background-color:#4f46e51a;color:var(--admin-primary, #4f46e5)}.stat-icon-wrapper.success-theme{background-color:#10b9811a;color:#10b981}.stat-icon-wrapper.warning-theme{background-color:#f59e0b1a;color:#d97706}.stat-icon-wrapper.pct-theme{background-color:#8b5cf61a;color:#7c3aed}.stat-icon-wrapper.info-theme{background-color:#3b82f61a;color:#3b82f6}.stat-icon-wrapper.sub-theme{background-color:#ec48991a;color:#db2777}.stat-content{display:flex;flex-direction:column;gap:2px}.stat-value{font-size:1.7rem;font-weight:800;color:var(--admin-text-primary, #111827);line-height:1.1}.stat-label{font-size:var(--admin-text-xs, 12px);color:var(--admin-text-secondary, #4b5563);font-weight:600}.dept-tabs-bar{display:flex;gap:8px;background-color:var(--admin-bg-secondary, #f3f4f6);padding:5px;border-radius:12px;width:fit-content;border:1px solid var(--admin-border, #e5e7eb)}.dept-tab-btn{background-color:transparent;border:none;padding:8px 20px;border-radius:8px;font-weight:600;font-size:var(--admin-text-sm, 14px);color:var(--admin-text-secondary, #4b5563);cursor:pointer;display:inline-flex;align-items:center;gap:8px;transition:all .2s ease}.dept-tab-btn.active{background-color:var(--admin-bg-card, #fff);color:var(--admin-primary, #4f46e5);box-shadow:var(--admin-shadow-sm, 0 1px 2px 0 rgba(0, 0, 0, .05))}.dept-tab-panel{display:flex;flex-direction:column;gap:var(--admin-space-lg)}.dept-panel-card{background-color:var(--admin-bg-card, #fff);border:1px solid var(--admin-border, #e5e7eb);border-radius:var(--admin-radius-lg, 12px);padding:var(--admin-space-2xl, 24px);box-shadow:var(--admin-shadow-sm, 0 1px 2px 0 rgba(0, 0, 0, .05));display:flex;flex-direction:column;gap:var(--admin-space-lg)}.panel-title{font-size:1.2rem;font-weight:var(--admin-font-bold, 700);color:var(--admin-text-primary, #111827);margin:0;display:flex;align-items:center;gap:8px}.panel-title i{color:var(--admin-primary, #4f46e5)}.panel-desc{font-size:var(--admin-text-sm, 14px);color:var(--admin-text-secondary, #4b5563);margin:0}.panel-card-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px}.dept-progress-section{background-color:var(--admin-bg-secondary, #f3f4f6);padding:20px;border-radius:var(--admin-radius-md, 8px);border:1px solid var(--admin-border, #e5e7eb)}.progress-label{font-weight:700;font-size:.88rem;color:var(--admin-text-primary, #111827);margin-bottom:12px;display:block}.progress-meter-wrap{display:flex;align-items:center;gap:14px}.progress-meter-track{flex:1;height:12px;background-color:var(--admin-border, #e5e7eb);border-radius:99px;overflow:hidden}.progress-meter-fill{height:100%;background:linear-gradient(90deg,var(--admin-primary, #4f46e5) 0%,#10b981 100%);border-radius:99px;transition:width .5s ease-out}.progress-meter-value{font-size:1rem;font-weight:800;color:var(--admin-text-primary, #111827);min-width:45px}.dept-table{width:100%;border-collapse:collapse;text-align:left;font-size:var(--admin-text-sm, 14px)}.dept-table th{background-color:var(--admin-bg-secondary, #f9fafb);color:var(--admin-text-secondary, #4b5563);font-weight:700;padding:14px 18px;text-transform:uppercase;font-size:.72rem;letter-spacing:.05em;border-bottom:2px solid var(--admin-border, #e5e7eb)}.dept-table td{padding:16px 18px;border-bottom:1px solid var(--admin-border, #e5e7eb);color:var(--admin-text-primary, #111827);vertical-align:middle}.dept-row-clickable{cursor:pointer;transition:background-color .15s ease-in-out}.dept-row-clickable:hover{background-color:#f3f4f666}.empty-table-text{text-align:center;color:var(--admin-text-secondary, #4b5563);padding:35px!important;font-style:italic}.badge-user{font-family:monospace;font-weight:600;background-color:var(--admin-bg-secondary, #f3f4f6);padding:4px 8px;border-radius:4px}.subjects-col{max-width:250px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--admin-text-secondary, #4b5563)}.badge-status-completed{background-color:#10b9811a;color:#10b981;padding:3px 8px;border-radius:99px;font-weight:700}.badge-status-pending{background-color:#f59e0b1a;color:#d97706;padding:3px 8px;border-radius:99px;font-weight:700}.table-progress-wrap{display:flex;align-items:center;gap:10px;width:100%;max-width:150px}.progress-pct-text{font-weight:700;font-size:.8rem;min-width:32px}.table-progress-track{flex:1;height:6px;background-color:var(--admin-border, #e5e7eb);border-radius:99px;overflow:hidden}.table-progress-fill{height:100%;background:linear-gradient(90deg,#10b981,#059669);border-radius:99px}.table-progress-fill.style-practical{background:linear-gradient(90deg,#3b82f6,#1d4ed8)}.btn-table-action{background-color:transparent;border:1px solid var(--admin-primary, #4f46e5);color:var(--admin-primary, #4f46e5);padding:5px 12px;border-radius:6px;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;gap:4px;transition:all .15s ease}.btn-table-action:hover{background-color:var(--admin-primary, #4f46e5);color:#fff}.panel-search-bar{position:relative;min-width:250px}.panel-search-bar i{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--admin-text-secondary, #4b5563)}.panel-search-bar input{padding:8px 12px 8px 36px;border:1px solid var(--admin-border, #e5e7eb);border-radius:var(--admin-radius-md, 8px);width:100%;font-size:var(--admin-text-sm, 14px);background-color:var(--admin-bg-card, #fff);outline:none}.panel-search-bar input:focus{border-color:var(--admin-primary, #4f46e5);box-shadow:0 0 0 3px #4f46e51a}.reports-filter-bar{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}.reports-search{position:relative;flex:1;min-width:250px}.reports-search i{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--admin-text-secondary, #4b5563)}.reports-search input{width:100%;padding:9px 12px 9px 36px;border:1px solid var(--admin-border, #e5e7eb);border-radius:8px;font-size:var(--admin-text-sm, 14px);outline:none}.reports-search input:focus{border-color:var(--admin-primary, #4f46e5)}.filter-dropdowns{display:flex;gap:10px;flex-wrap:wrap}.filter-dropdowns select{padding:9px 14px;border:1px solid var(--admin-border, #e5e7eb);border-radius:8px;font-size:var(--admin-text-sm, 14px);background-color:var(--admin-bg-card, #fff);cursor:pointer;outline:none}.filter-dropdowns select:focus{border-color:var(--admin-primary, #4f46e5)}.report-subject-cell{display:flex;flex-direction:column}.report-sub-name{font-weight:600}.report-sub-code{font-size:.72rem;color:var(--admin-text-secondary, #4b5563)}.btn-report-view{background:transparent;border:1px solid var(--admin-border, #e5e7eb);padding:6px 12px;border-radius:6px;font-weight:600;cursor:pointer;transition:all .15s ease}.btn-report-view:hover{background-color:var(--admin-bg-secondary, #f3f4f6);border-color:var(--admin-text-secondary, #4b5563)}.dept-top-nav-bar{display:flex;justify-content:space-between;align-items:center}.btn-back-link{background-color:transparent;border:1px solid var(--admin-border, #e5e7eb);padding:8px 16px;border-radius:var(--admin-radius-md, 8px);font-weight:600;cursor:pointer;display:inline-flex;align-items:center;gap:8px;transition:background-color .15s ease}.btn-back-link:hover{background-color:var(--admin-bg-secondary, #f3f4f6)}.dept-profile-card{background:linear-gradient(135deg,var(--admin-bg-card, #fff) 0%,rgba(243,244,246,.4) 100%);border:1px solid var(--admin-border, #e5e7eb);border-radius:var(--admin-radius-lg, 12px);padding:20px 24px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:20px}.profile-main-info{display:flex;align-items:center;gap:20px}.profile-avatar{width:60px;height:60px;border-radius:16px;background:linear-gradient(135deg,#4f46e51a,#3b82f61a);color:var(--admin-primary, #4f46e5);display:flex;align-items:center;justify-content:center;font-size:1.85rem}.profile-name{font-size:1.6rem;font-weight:800;margin:0 0 4px}.profile-sub-details{display:flex;gap:10px;color:var(--admin-text-secondary, #4b5563);font-size:var(--admin-text-sm, 14px);flex-wrap:wrap}.profile-stats-row{display:flex;gap:20px}.profile-stat-item{display:flex;flex-direction:column;align-items:center;min-width:80px}.stat-num{font-size:1.7rem;font-weight:800;line-height:1}.stat-num.completed{color:#10b981}.stat-num.pending{color:#d97706}.stat-lbl{font-size:.7rem;text-transform:uppercase;font-weight:700;color:var(--admin-text-secondary, #4b5563);margin-top:6px;text-align:center}.stat-circle-wrap{position:relative;width:45px;height:45px;display:flex;align-items:center;justify-content:center}.stat-numpct{position:absolute;font-size:.72rem;font-weight:800}.stat-circle-bar{width:100%;height:100%;border-radius:50%;position:absolute;mask:radial-gradient(transparent 58%,#000 61%);-webkit-mask:radial-gradient(transparent 58%,#000 61%)}.filter-controls-row{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}.search-input-wrap{position:relative;flex:1;min-width:250px}.search-input-wrap i{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--admin-text-secondary, #4b5563)}.search-input-wrap input{padding:8px 12px 8px 36px;border:1px solid var(--admin-border, #e5e7eb);border-radius:8px;width:100%;font-size:var(--admin-text-sm, 14px);outline:none}.search-input-wrap input:focus{border-color:var(--admin-primary, #4f46e5)}.filter-select-group{display:flex;gap:10px;flex-wrap:wrap}.filter-item{display:flex;flex-direction:column;gap:2px}.filter-item label{font-size:.65rem;font-weight:700;text-transform:uppercase;color:var(--admin-text-secondary, #4b5563)}.filter-item select{padding:8px 12px;border:1px solid var(--admin-border, #e5e7eb);border-radius:8px;font-size:var(--admin-text-sm, 14px);background-color:var(--admin-bg-card, #fff);cursor:pointer;outline:none}.filter-item select:focus{border-color:var(--admin-primary, #4f46e5)}.ciaan-type-badge{font-size:.72rem;font-weight:700;padding:3px 6px;border-radius:4px}.ciaan-type-badge.theory{background-color:#4f46e51a;color:var(--admin-primary, #4f46e5)}.ciaan-type-badge.practical{background-color:#3b82f61a;color:#3b82f6}.ciaan-type-badge.theory+practical{background-color:#8b5cf61a;color:#7c3aed}.expt-count{font-weight:600;color:var(--admin-text-secondary, #4b5563)}.status-badge-val{font-size:.72rem;font-weight:700;padding:3px 8px;border-radius:99px;text-transform:capitalize;display:inline-block}.status-badge-val.active{background-color:#3b82f61a;color:#3b82f6}.status-badge-val.completed{background-color:#10b9811a;color:#10b981}.status-badge-val.archived{background-color:#6b72801a;color:#6b7280}.action-buttons-wrap{display:flex;gap:6px}.btn-action{padding:5px 10px;border-radius:6px;font-size:.78rem;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;gap:4px;border:1px solid var(--admin-border, #e5e7eb);background-color:transparent;transition:all .15s ease}.btn-action.view{border-color:var(--admin-primary, #4f46e5);color:var(--admin-primary, #4f46e5)}.btn-action.view:hover{background-color:var(--admin-primary, #4f46e5);color:#fff}.btn-action.print:hover{background-color:var(--admin-bg-secondary, #f3f4f6)}.btn-action.delete{border-color:#ef4444;color:#ef4444}.btn-action.delete:hover{background-color:#ef4444;color:#fff}.dept-ciaan-print-wrapper{min-height:100vh;background-color:#f3f4f6;padding-top:75px}.dept-toolbar{position:fixed;top:0;left:0;right:0;height:70px;background:#ffffffd9;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--admin-border, #e5e7eb);display:flex;justify-content:space-between;align-items:center;padding:0 24px;z-index:1000;box-shadow:0 4px 6px -1px #0000000d}.toolbar-btn{padding:8px 16px;border-radius:8px;font-weight:600;font-size:.85rem;cursor:pointer;display:inline-flex;align-items:center;gap:6px;transition:all .15s ease}.toolbar-btn.btn-back{background:transparent;border:1px solid var(--admin-border, #e5e7eb)}.toolbar-btn.btn-back:hover{background-color:var(--admin-bg-secondary, #f3f4f6)}.toolbar-btn.btn-print{background:linear-gradient(135deg,var(--admin-primary, #4f46e5) 0%,#3b82f6 100%);color:#fff;border:none}.toolbar-btn.btn-print:hover{filter:brightness(1.05)}.toolbar-btn.btn-pdf{background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none}.toolbar-btn.btn-pdf:hover{filter:brightness(1.05)}.toolbar-btn.btn-delete{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;border:none}.toolbar-btn.btn-delete:hover{filter:brightness(1.05)}.delete-modal-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background-color:#11182799;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:9999}.delete-modal-card{background:var(--admin-bg-card, #fff);border:1px solid var(--admin-border, #e5e7eb);border-radius:var(--admin-radius-lg, 12px);padding:24px;width:100%;max-width:500px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;display:flex;flex-direction:column;gap:16px;animation:scaleIn .2s cubic-bezier(.34,1.56,.64,1)}@keyframes scaleIn{0%{transform:scale(.95);opacity:0}to{transform:scale(1);opacity:1}}.delete-modal-header{display:flex;align-items:center;gap:12px}.danger-icon-wrapper{width:44px;height:44px;border-radius:10px;background-color:#ef44441a;color:#ef4444;display:flex;align-items:center;justify-content:center;font-size:1.4rem}.delete-modal-header h3{font-size:1.25rem;font-weight:700;margin:0}.delete-modal-body{font-size:.9rem;color:var(--admin-text-primary, #111827);line-height:1.5;display:flex;flex-direction:column;gap:10px}.warning-heavy{font-weight:600}.warning-desc{color:var(--admin-text-secondary, #4b5563)}.delete-impact-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:6px}.delete-impact-list li{display:flex;align-items:center;gap:8px;font-size:.82rem}.delete-impact-list li i{color:#ef4444}.alert-badge-danger{background-color:#ef444414;border:1px solid rgba(239,68,68,.2);color:#b91c1c;padding:8px 12px;border-radius:6px;font-weight:700;font-size:.8rem;display:flex;align-items:center;gap:8px;margin-top:4px}.delete-modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:10px}.btn-modal-cancel{background:transparent;border:1px solid var(--admin-border, #e5e7eb);padding:8px 18px;border-radius:8px;font-weight:600;cursor:pointer;color:var(--admin-text-primary, #111827)}.btn-modal-cancel:hover{background-color:var(--admin-bg-secondary, #f3f4f6)}.btn-modal-delete{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;border:none;padding:8px 18px;border-radius:8px;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;gap:6px}.btn-modal-delete:hover{filter:brightness(1.05)}@media print{.dept-top-nav-bar,.dept-tabs-bar,.panel-card-header,.dept-table th:last-child,.dept-table td:last-child,.dept-toolbar,.sidebar,.header,.main-header{display:none!important}.dept-analytics-container{padding:0!important;margin:0!important}.dept-panel-card{border:none!important;box-shadow:none!important;padding:0!important;margin-bottom:30px}.dept-table{border:1px solid #000!important}.dept-table th,.dept-table td{border:1px solid #000!important;color:#000!important;padding:8px 10px!important}.dept-ciaan-print-wrapper{padding-top:0!important;background-color:#fff!important}.print-content-container{box-shadow:none!important;margin:0!important;max-width:100%!important}}.attendance-wise-container{padding:var(--admin-space-xl) var(--admin-space-2xl);display:flex;flex-direction:column;gap:var(--admin-space-xl);animation:fadeIn .4s ease-out}.attendance-filters-card{background:var(--admin-bg-card, #fff);border:1px solid var(--admin-border, #e5e7eb);border-radius:var(--admin-radius-lg, 12px);padding:20px;box-shadow:var(--admin-shadow-sm, 0 1px 2px 0 rgba(0, 0, 0, .05))}.filters-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;align-items:flex-end}.filter-group{display:flex;flex-direction:column;gap:6px}.filter-group label{font-size:.85rem;font-weight:600;color:var(--admin-text-secondary, #4b5563)}.filter-group select{padding:10px 14px;border-radius:var(--admin-radius-md, 8px);border:1px solid var(--admin-border, #e5e7eb);background-color:var(--admin-bg-secondary, #f9fafb);color:var(--admin-text-primary, #111827);font-size:.9rem;font-weight:500;outline:none;transition:border-color .2s ease,box-shadow .2s ease;width:100%}.filter-group select:focus{border-color:var(--admin-primary, #4f46e5);box-shadow:0 0 0 3px #4f46e51a}.filter-group select:disabled{background-color:#f3f4f6;color:#9ca3af;cursor:not-allowed}.report-meta-card{background:var(--admin-bg-card, #fff);border:1px solid var(--admin-border, #e5e7eb);border-radius:var(--admin-radius-lg, 12px);padding:24px;box-shadow:var(--admin-shadow-sm, 0 1px 2px 0 rgba(0, 0, 0, .05));display:flex;flex-direction:column;gap:20px}.report-header-details{display:flex;justify-content:space-between;align-items:center;border-bottom:1px dashed var(--admin-border, #e5e7eb);padding-bottom:16px}.report-title-section h3{font-size:1.4rem;font-weight:800;color:var(--admin-text-primary, #111827);margin:0 0 4px}.subject-code-badge{background-color:var(--admin-primary-light, #e0e7ff);color:var(--admin-primary, #4f46e5);font-size:.75rem;font-weight:700;padding:2px 8px;border-radius:4px;text-transform:uppercase}.meta-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.meta-item{display:flex;flex-direction:column;gap:4px}.meta-label{font-size:.78rem;text-transform:uppercase;color:var(--admin-text-muted, #6b7280);font-weight:700;letter-spacing:.05em}.meta-value{font-size:.95rem;font-weight:600;color:var(--admin-text-primary, #111827)}.action-toolbar{display:flex;justify-content:flex-end;gap:12px;margin-top:10px}.btn-action-report{display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border-radius:var(--admin-radius-md, 8px);font-weight:600;font-size:.88rem;border:1px solid transparent;cursor:pointer;transition:all .2s ease}.btn-action-report.view{background-color:#f3f4f6;color:#374151}.btn-action-report.print{background-color:#e0f2fe;color:#0369a1}.btn-action-report.pdf{background-color:#fee2e2;color:#b91c1c}.btn-action-report.excel{background-color:#dcfce7;color:#15803d}.btn-action-report:hover{transform:translateY(-1px);filter:brightness(.96)}.register-section{display:flex;flex-direction:column;gap:16px}.table-container{border:1px solid var(--admin-border, #e5e7eb);border-radius:var(--admin-radius-md, 8px);overflow:hidden}.attendance-table{width:100%;border-collapse:collapse;text-align:left}.attendance-table th{background-color:var(--admin-bg-secondary, #f9fafb);color:var(--admin-text-secondary, #4b5563);font-weight:700;font-size:.82rem;text-transform:uppercase;padding:12px 16px;border-bottom:1px solid var(--admin-border, #e5e7eb);position:sticky;top:0;z-index:10}.attendance-table td{padding:12px 16px;font-size:.9rem;border-bottom:1px solid var(--admin-border, #e5e7eb);color:var(--admin-text-primary, #111827);background-color:var(--admin-bg-card, #fff)}.attendance-table tbody tr:hover td{background-color:#f9fafb}.badge-status{display:inline-block;padding:4px 10px;border-radius:99px;font-weight:700;font-size:.72rem;text-transform:uppercase}.badge-status.eligible{background-color:#dcfce7;color:#15803d}.badge-status.defaulter{background-color:#fee2e2;color:#b91c1c}.pagination-container{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-top:1px solid var(--admin-border, #e5e7eb);background:var(--admin-bg-secondary, #f9fafb)}.pagination-info{font-size:.85rem;color:var(--admin-text-secondary, #4b5563)}.pagination-buttons{display:flex;gap:8px}.btn-paginate{padding:6px 12px;border-radius:var(--admin-radius-sm, 6px);border:1px solid var(--admin-border, #e5e7eb);background-color:var(--admin-bg-card, #fff);color:var(--admin-text-primary, #111827);font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-paginate:hover:not(:disabled){background-color:#f3f4f6;border-color:#d1d5db}.btn-paginate:disabled{color:#9ca3af;cursor:not-allowed;background-color:#f3f4f6}.print-only-header,.print-only-signatures{display:none}@media (max-width: 1024px){.filters-grid,.meta-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.filters-grid,.meta-grid{grid-template-columns:1fr}.table-container{overflow-x:auto}.attendance-table{min-width:600px}.action-toolbar{flex-wrap:wrap;justify-content:flex-start}.attendance-wise-container{padding:var(--admin-space-lg)}}@media print{body{background-color:#fff!important;color:#000!important;font-size:10pt}.sidebar,.navbar,.dept-tabs-bar,.attendance-filters-card,.action-toolbar,.pagination-container,.btn-paginate,.toolbar,.filters{display:none!important}.attendance-wise-container{padding:0!important;margin:0!important;gap:0!important}.report-meta-card{border:none!important;box-shadow:none!important;padding:0!important}.print-only-header{display:flex!important;align-items:center;gap:20px;border-bottom:2px solid #000;padding-bottom:12px;margin-bottom:20px}.print-logo{width:60px;height:60px}.print-header-text h2{font-size:18pt;font-weight:800;margin:0}.print-header-text p{font-size:12pt;margin:4px 0 0;color:#333}.report-header-details{display:none!important}.meta-grid{grid-template-columns:repeat(2,1fr)!important;margin-bottom:20px;gap:8px 30px!important}.meta-item{flex-direction:row;justify-content:space-between;border-bottom:1px solid #eee;padding-bottom:4px}.meta-label{font-size:9pt;color:#000}.meta-value{font-size:9pt;font-weight:700}.table-container{border:1px solid #000!important;border-radius:0!important}.attendance-table th{background-color:#f0f0f0!important;color:#000!important;border-bottom:1.5px solid #000!important;font-size:8pt!important;padding:6px 8px!important}.attendance-table td{border-bottom:1px solid #ccc!important;font-size:8pt!important;padding:5px 8px!important}.badge-status{background-color:transparent!important;border:none!important;font-weight:700;padding:0!important}.badge-status.eligible{color:#000!important}.badge-status.defaulter{color:#000!important;text-decoration:underline}.print-only-signatures{display:block!important;margin-top:50px;page-break-inside:avoid}.print-signatures-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px;margin-top:40px}.sig-box{text-align:center;border-top:1px solid #000;padding-top:6px;font-weight:700;font-size:10pt}.print-generated-date{margin-top:25px;font-size:8pt;color:#666;text-align:left}}.mtt-page{padding:2rem;max-width:860px;margin:0 auto}.mtt-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-bottom:2rem}.mtt-header-left h2{font-size:1.5rem;font-weight:700;color:var(--admin-text, #111827);margin:0 0 .25rem}.mtt-header-left p{font-size:.875rem;color:var(--admin-text-muted, #6b7280);margin:0}.mtt-header-actions{display:flex;gap:.625rem;flex-wrap:wrap;align-items:center}.mtt-btn{display:inline-flex;align-items:center;gap:.35rem;padding:.5rem 1rem;font-size:.8125rem;font-weight:600;border-radius:8px;border:none;cursor:pointer;transition:background .18s,opacity .18s,transform .12s;white-space:nowrap}.mtt-btn:disabled{opacity:.55;cursor:not-allowed}.mtt-btn:not(:disabled):active{transform:scale(.97)}.mtt-btn-primary{background:var(--admin-primary, #10b981);color:#fff}.mtt-btn-primary:not(:disabled):hover{background:var(--admin-primary-dark, #059669)}.mtt-btn-secondary{background:var(--admin-border, #e5e7eb);color:var(--admin-text, #111827)}.mtt-btn-secondary:not(:disabled):hover{background:#d1d5db}.mtt-btn-danger{background:#fee2e2;color:#dc2626}.mtt-btn-danger:not(:disabled):hover{background:#fecaca}.mtt-btn-ghost{background:transparent;color:var(--admin-text-muted, #6b7280);padding:.375rem .5rem}.mtt-btn-ghost:not(:disabled):hover{background:var(--admin-border, #e5e7eb);color:var(--admin-text, #111827)}.mtt-add-card{background:var(--admin-surface, #fff);border:1.5px dashed var(--admin-primary, #10b981);border-radius:12px;padding:1.25rem 1.5rem;margin-bottom:1.5rem}.mtt-add-card h4{font-size:.875rem;font-weight:600;color:var(--admin-primary, #10b981);margin:0 0 .875rem;letter-spacing:.02em;text-transform:uppercase}.mtt-add-row{display:flex;gap:.75rem;flex-wrap:wrap;align-items:flex-end}.mtt-field{display:flex;flex-direction:column;gap:.25rem;flex:1;min-width:100px}.mtt-field label{font-size:.75rem;font-weight:600;color:var(--admin-text-muted, #6b7280);text-transform:uppercase;letter-spacing:.04em}.mtt-field input{padding:.5rem .75rem;border:1.5px solid var(--admin-border, #e5e7eb);border-radius:7px;font-size:.875rem;color:var(--admin-text, #111827);background:var(--admin-background, #f9fafb);outline:none;transition:border-color .15s}.mtt-field input:focus{border-color:var(--admin-primary, #10b981);background:#fff}.mtt-table-wrapper{background:var(--admin-surface, #fff);border:1px solid var(--admin-border, #e5e7eb);border-radius:12px;overflow:hidden}.mtt-table{width:100%;border-collapse:collapse}.mtt-table thead tr{background:var(--admin-background, #f9fafb);border-bottom:1px solid var(--admin-border, #e5e7eb)}.mtt-table th{padding:.75rem 1rem;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--admin-text-muted, #6b7280);text-align:left}.mtt-table th.th-center{text-align:center}.mtt-table td{padding:.65rem 1rem;font-size:.875rem;color:var(--admin-text, #111827);border-bottom:1px solid var(--admin-border, #e5e7eb);vertical-align:middle}.mtt-table tbody tr:last-child td{border-bottom:none}.mtt-table tbody tr{transition:background .12s}.mtt-table tbody tr:hover{background:var(--admin-primary-light, #ecfdf5)}.mtt-table tbody tr.dragging-over{background:#d1fae5}.mtt-table tbody tr.inactive-row td{opacity:.45}.mtt-drag-handle{cursor:grab;color:#9ca3af;font-size:1rem;padding:0 .25rem;display:inline-flex;align-items:center}.mtt-drag-handle:active{cursor:grabbing}.mtt-inline-input{width:100%;max-width:120px;padding:.3rem .5rem;border:1.5px solid var(--admin-primary, #10b981);border-radius:6px;font-size:.875rem;color:var(--admin-text, #111827);background:#f0fdf4;outline:none}.mtt-toggle{display:flex;justify-content:center}.mtt-toggle input[type=checkbox]{width:36px;height:20px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#d1d5db;border-radius:20px;cursor:pointer;position:relative;transition:background .2s;outline:none;flex-shrink:0}.mtt-toggle input[type=checkbox]:checked{background:var(--admin-primary, #10b981)}.mtt-toggle input[type=checkbox]:after{content:"";position:absolute;top:3px;left:3px;width:14px;height:14px;background:#fff;border-radius:50%;transition:left .2s}.mtt-toggle input[type=checkbox]:checked:after{left:19px}.mtt-action-bar{display:flex;justify-content:flex-end;gap:.75rem;margin-top:1.5rem;flex-wrap:wrap}.mtt-toast-container{position:fixed;bottom:1.5rem;right:1.5rem;z-index:9999;display:flex;flex-direction:column;gap:.5rem;pointer-events:none}.mtt-toast{pointer-events:auto;display:flex;align-items:center;gap:.625rem;padding:.75rem 1.25rem;border-radius:10px;font-size:.875rem;font-weight:500;min-width:220px;max-width:360px;box-shadow:0 4px 16px #0000001f;animation:mttSlideIn .22s ease}@keyframes mttSlideIn{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}.mtt-toast.success{background:#f0fdf4;border-left:4px solid #10b981;color:#065f46}.mtt-toast.error{background:#fef2f2;border-left:4px solid #ef4444;color:#991b1b}.mtt-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;z-index:8888;display:flex;align-items:center;justify-content:center}.mtt-modal{background:#fff;border-radius:14px;padding:2rem;width:360px;max-width:90vw;box-shadow:0 12px 40px #0000002e;animation:mttModalIn .2s ease}@keyframes mttModalIn{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.mtt-modal h4{font-size:1rem;font-weight:700;color:#111827;margin:0 0 .5rem}.mtt-modal p{font-size:.875rem;color:#6b7280;margin:0 0 1.5rem}.mtt-modal-actions{display:flex;gap:.625rem;justify-content:flex-end}.mtt-empty{text-align:center;padding:3rem 1rem;color:var(--admin-text-muted, #6b7280)}.mtt-empty-icon{font-size:2.5rem;margin-bottom:.75rem}.mtt-loading{text-align:center;padding:3rem 1rem;color:var(--admin-text-muted, #6b7280)}@media (max-width: 600px){.mtt-page{padding:1rem}.mtt-add-row{flex-direction:column}.mtt-field{min-width:unset;width:100%}.mtt-header{flex-direction:column}}.manage-layout-wrapper{padding:24px;width:100%;min-height:calc(100vh - var(--header-height));box-sizing:border-box;display:flex;flex-direction:column;gap:20px}.manage-title-row{display:flex;align-items:center;justify-content:space-between;gap:16px}.title-left{display:flex;align-items:center;gap:12px}.title-left h2{font-size:18px;font-weight:650;color:var(--office-text);margin:0}.directory-count-badge{background-color:var(--office-primary-light);color:var(--office-primary);border:1px solid rgba(37,99,235,.12);font-size:11.5px;font-weight:600;padding:2px 8px;border-radius:9999px}.title-actions{display:flex;gap:8px}.margin-bottom-sm{margin-bottom:12px}.sticky-filters-container{position:sticky;top:var(--header-height);z-index:100;background-color:var(--office-surface);border:1px solid var(--office-border);border-radius:var(--office-radius-md);box-shadow:var(--office-shadow-sm)}.filters-card-inner{padding:12px 16px;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.filter-select-group{display:flex;align-items:center;gap:8px;flex-wrap:wrap;flex:1}.filter-select-group select{padding:6px 10px;font-size:12.5px;border:1px solid var(--office-border);background-color:var(--office-surface);color:var(--office-text);border-radius:var(--office-radius-sm);outline:none;font-family:inherit;transition:var(--office-transition-fast);cursor:pointer;min-width:110px}.filter-select-group select:focus{border-color:var(--office-primary)}.filter-select-group select:disabled{background-color:var(--office-bg);cursor:not-allowed;opacity:.6}.filter-right-search-action{display:flex;align-items:center;gap:12px}.search-input-wrapper{position:relative;width:200px}.search-input-wrapper input{padding:6px 10px 6px 30px;font-size:12.5px;border:1px solid var(--office-border);background-color:var(--office-surface);color:var(--office-text);border-radius:var(--office-radius-sm);outline:none;width:100%;box-sizing:border-box;font-family:inherit;transition:var(--office-transition-fast)}.search-input-wrapper input:focus{border-color:var(--office-primary);box-shadow:0 0 0 3px #2563eb14}.search-svg{position:absolute;left:10px;top:50%;transform:translateY(-50%);width:14px;height:14px;color:var(--office-muted);pointer-events:none}.button-group-trigger{display:flex;gap:6px}.button-group-trigger button{padding:6px 12px;font-size:12px}.student-records-table-card{background-color:var(--office-surface);border:1px solid var(--office-border);border-radius:var(--office-radius-lg);box-shadow:var(--office-shadow-sm);overflow:hidden;display:flex;flex-direction:column}.table-loader-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px;gap:12px;color:var(--office-muted)}.table-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:64px 24px;text-align:center;box-sizing:border-box}.empty-state-icon{font-size:32px;margin-bottom:12px;color:var(--office-muted);opacity:.8}.table-empty-state h4{font-size:14.5px;font-weight:600;color:var(--office-text);margin:0 0 4px}.table-empty-state p{font-size:12.5px;color:var(--office-muted);margin:0}.table-container-inner{overflow-x:auto;width:100%}.directory-data-table{width:100%;border-collapse:collapse;text-align:left;font-size:13px}.directory-data-table th{background-color:var(--office-bg);padding:10px 14px;font-weight:600;color:var(--office-text);border-bottom:1px solid var(--office-border);-webkit-user-select:none;user-select:none;white-space:nowrap}.sortable-th{cursor:pointer;transition:var(--office-transition-fast)}.sortable-th:hover{background-color:var(--office-border);color:var(--office-primary)}.directory-data-table td{padding:10px 14px;border-bottom:1px solid var(--office-border);color:var(--office-text);vertical-align:middle}.directory-data-table tr:hover td{background-color:#f8fafc80}.student-cell-identity{display:flex;align-items:center;gap:8px}.student-identity-name{font-weight:550;color:var(--office-text)}.batch-badge{background-color:#4f46e50f;color:var(--office-secondary);border:1px solid rgba(79,70,229,.1);padding:2px 6px;border-radius:4px;font-size:11px;font-weight:550}.division-badge{background-color:var(--office-primary-light);color:var(--office-primary);border:1px solid rgba(37,99,235,.1);padding:2px 6px;border-radius:4px;font-size:11px;font-weight:550}.table-inline-input{border:1px solid var(--office-border);background-color:var(--office-surface);color:var(--office-text);padding:4px 8px;font-size:12px;border-radius:var(--office-radius-sm);outline:none;font-family:inherit;width:100px;transition:var(--office-transition-fast)}.table-inline-input:focus{border-color:var(--office-primary);box-shadow:0 0 0 2px #2563eb14}.credentials-action-cell{display:flex;align-items:center;gap:6px}.btn-tiny-icon{background:transparent;border:none;cursor:pointer;padding:2px 4px;border-radius:3px;font-size:11px;color:var(--office-muted);transition:var(--office-transition-fast)}.btn-tiny-icon:hover{background-color:var(--office-bg);color:var(--office-text)}.action-buttons-flex-row{display:flex;gap:8px;justify-content:flex-end}.action-link-btn{background:transparent;border:none;color:var(--office-primary);font-size:12.5px;font-weight:550;cursor:pointer;padding:4px 6px;border-radius:4px;transition:var(--office-transition-fast)}.action-link-btn:hover{background-color:var(--office-primary-light);text-decoration:underline}.action-link-btn.danger{color:var(--office-danger)}.action-link-btn.danger:hover{background-color:#ef44440d}.text-right{text-align:right}.table-footer-actions-row{padding:12px 16px;border-top:1px solid var(--office-border);display:flex;align-items:center;justify-content:space-between;background-color:#f8fafc4d}.pagination-controls-box{display:flex;align-items:center;gap:12px}.pagination-btn{background-color:var(--office-surface);border:1px solid var(--office-border);border-radius:var(--office-radius-sm);color:var(--office-text);padding:4px 8px;font-size:11px;cursor:pointer;transition:var(--office-transition-fast);display:flex;align-items:center;justify-content:center}.pagination-btn:hover:not(:disabled){background-color:var(--office-bg);border-color:var(--office-muted)}.pagination-btn:disabled{opacity:.4;cursor:not-allowed}.pagination-status{font-size:12px;color:var(--office-muted)}.drawer-overlay-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#0f172a4d;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1050;display:flex;justify-content:flex-end}.details-slider-drawer{background-color:var(--office-surface);border-left:1px solid var(--office-border);box-shadow:var(--office-shadow-xl);width:100%;max-width:420px;height:100vh;display:flex;flex-direction:column;z-index:1060;box-sizing:border-box}.drawer-header-row{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--office-border)}.drawer-user-info-meta{display:flex;align-items:center;gap:12px}.drawer-avatar{width:38px;height:38px;border-radius:50%;background-color:var(--office-primary-light);color:var(--office-primary);border:1px solid rgba(37,99,235,.15);font-size:16px;font-weight:700;display:flex;align-items:center;justify-content:center}.drawer-user-info-meta h3{font-size:14.5px;font-weight:650;color:var(--office-text);margin:0;line-height:1.2}.drawer-user-info-meta .role-label{font-size:11px;color:var(--office-muted)}.drawer-close-btn{background:transparent;border:none;font-size:16px;color:var(--office-muted);cursor:pointer;padding:4px;transition:var(--office-transition-fast)}.drawer-close-btn:hover{color:var(--office-text)}.drawer-scrolling-content{flex:1;overflow-y:auto;padding:20px;display:flex;flex-direction:column;gap:16px}.drawer-section-card{border:1px solid var(--office-border);border-radius:var(--office-radius-md);padding:16px;background-color:var(--office-surface)}.drawer-section-card h4{font-size:13px;font-weight:600;color:var(--office-text);text-transform:uppercase;letter-spacing:.05em;margin:0 0 12px}.section-header-trigger-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.section-header-trigger-row h4{margin-bottom:0}.compact-btn{padding:4px 10px;font-size:11.5px}.drawer-details-list{display:flex;flex-direction:column;gap:10px}.details-item-row{display:flex;justify-content:space-between;font-size:12.5px;padding-bottom:8px;border-bottom:1px solid rgba(226,232,240,.5)}.details-item-row:last-child{border-bottom:none;padding-bottom:0}.item-label{color:var(--office-muted)}.item-value{font-weight:550;color:var(--office-text);text-align:right}.drawer-edit-form-grid{display:flex;flex-direction:column;gap:12px}.drawer-card-actions-footer{margin-top:14px;padding-top:14px;border-top:1px solid var(--office-border)}.full-width{width:100%}.muted-italic{font-style:italic;color:var(--office-muted)}.animate-slideInRight{animation:slideInRight .2s cubic-bezier(.16,1,.3,1)}@media (max-width: 768px){.manage-title-row{flex-direction:column;align-items:flex-start;gap:12px}.title-actions{width:100%}.title-actions button{flex:1;justify-content:center}.filters-card-inner{flex-direction:column;align-items:stretch;gap:12px}.filter-select-group{grid-template-columns:1fr}.filter-select-group select{width:100%}.filter-right-search-action{flex-direction:column;align-items:stretch}.search-input-wrapper,.button-group-trigger{width:100%}.button-group-trigger button{flex:1;justify-content:center}.table-footer-actions-row{flex-direction:column;gap:12px;align-items:stretch}.table-footer-actions-row button,.pagination-controls-box{justify-content:center}}.bulk-seat-modal{max-width:560px}.drag-drop-area-label.compact{min-height:100px;padding:20px}.bulk-seat-preview-section{display:flex;flex-direction:column;gap:8px}.preview-header-row{display:flex;align-items:center;justify-content:space-between}.preview-header-row h4{font-size:13px;font-weight:600;color:var(--office-text);margin:0}.bulk-seat-result-section{display:flex;flex-direction:column;gap:14px}.result-summary-card{display:flex;gap:16px;padding:16px;background-color:var(--office-bg);border:1px solid var(--office-border);border-radius:var(--office-radius-md);justify-content:center}.result-stat{display:flex;flex-direction:column;align-items:center;gap:4px;flex:1}.result-stat-value{font-size:22px;font-weight:700;line-height:1}.result-stat-value.success{color:var(--office-success)}.result-stat-value.warning{color:var(--office-warning)}.result-stat-value.danger{color:var(--office-danger)}.result-stat-label{font-size:11px;font-weight:500;color:var(--office-muted);text-transform:uppercase;letter-spacing:.04em}.not-found-list-card{display:flex;flex-direction:column;gap:8px}.not-found-list-card h4{font-size:12.5px;font-weight:600;color:var(--office-warning);margin:0}.loading-ring-spinner.small{width:16px;height:16px;border-width:2px}.margin-top-sm{margin-top:10px}.wizard-btn-primary{background:var(--office-gradient-primary, var(--office-primary));color:#fff!important;border:none;padding:10px 20px;font-size:13.5px;font-weight:600;border-radius:var(--office-radius-md, 8px);cursor:pointer;display:inline-flex;align-items:center;gap:8px;box-shadow:0 4px 6px #2563eb14;transition:all .25s cubic-bezier(.4,0,.2,1)}.wizard-btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 15px #2563eb29;filter:brightness(1.05)}.wizard-btn-primary:disabled{opacity:.55;cursor:not-allowed;transform:none!important;box-shadow:none!important}.wizard-btn-outline{background-color:var(--office-surface, #ffffff);color:var(--office-text, #0f172a);border:1.5px solid var(--office-border, #e2e8f0);padding:10px 20px;font-size:13.5px;font-weight:600;border-radius:var(--office-radius-md, 8px);cursor:pointer;display:inline-flex;align-items:center;gap:8px;box-shadow:var(--office-shadow-sm, 0 1px 2px rgba(0, 0, 0, .05));transition:all .25s cubic-bezier(.4,0,.2,1)}.wizard-btn-outline:hover:not(:disabled){background-color:var(--office-bg, #f8fafc);border-color:var(--office-muted, #64748b);transform:translateY(-2px);box-shadow:0 4px 8px #0000000a}.wizard-btn-outline:disabled{opacity:.55;cursor:not-allowed;transform:none!important;box-shadow:none!important}.wizard-btn-outline.text-primary{color:var(--office-primary);border-color:var(--office-primary-light, rgba(37, 99, 235, .25));background-color:var(--office-primary-light, rgba(37, 99, 235, .02))}.wizard-btn-outline.text-primary:hover:not(:disabled){background-color:#2563eb14;border-color:var(--office-primary);box-shadow:0 4px 12px #2563eb0f}.wizard-btn-danger{background:var(--office-gradient-danger, var(--office-danger));color:#fff!important;border:none;padding:10px 20px;font-size:13.5px;font-weight:600;border-radius:var(--office-radius-md, 8px);cursor:pointer;display:inline-flex;align-items:center;gap:8px;box-shadow:0 4px 6px #ef444414;transition:all .25s cubic-bezier(.4,0,.2,1)}.wizard-btn-danger:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 15px #ef444429;filter:brightness(1.05)}.wizard-btn-danger:disabled{opacity:.55;cursor:not-allowed;transform:none!important;box-shadow:none!important}.table-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 32px!important;text-align:center;background:radial-gradient(circle at 50% 50%,var(--office-primary-light) 0%,transparent 75%)!important;border-radius:var(--office-radius-lg, 14px)!important;margin:16px!important;border:1.5px dashed var(--office-border, #e2e8f0)!important}.empty-state-icon{font-size:48px!important;margin-bottom:20px!important;filter:drop-shadow(0 4px 6px rgba(0,0,0,.05));opacity:.95;animation:bounce 2s infinite ease-in-out}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.table-empty-state h4{font-size:17px!important;font-weight:700!important;color:var(--office-text, #0f172a)!important;margin:0 0 8px!important;letter-spacing:-.01em}.table-empty-state p{font-size:13.5px!important;color:var(--office-muted, #64748b)!important;max-width:400px;line-height:1.5;margin:0!important}.manage-layout-wrapper{padding:32px!important;gap:28px!important}.manage-title-row{margin-bottom:8px}.title-left h2{font-size:24px!important;font-weight:800!important;letter-spacing:-.025em}.directory-count-badge{font-size:12.5px!important;padding:4px 12px!important;border-radius:9999px!important}.sticky-filters-container{box-shadow:0 10px 30px -10px #0000000a,var(--office-shadow-sm)!important;border:1px solid rgba(226,232,240,.8)!important;border-radius:var(--office-radius-lg, 14px)!important;overflow:hidden}.filters-card-inner{padding:16px 24px!important;gap:20px!important}.filter-select-group select{padding:8px 14px!important;font-size:13.5px!important;border-radius:var(--office-radius-md, 8px)!important;box-shadow:0 1px 2px #00000005!important}.search-input-wrapper input{padding:8px 12px 8px 36px!important;font-size:13.5px!important;border-radius:var(--office-radius-md, 8px)!important}.search-svg{left:12px!important;width:16px!important;height:16px!important}.button-group-trigger button{padding:8px 16px!important;font-size:13px!important}.student-records-table-card{border-radius:var(--office-radius-lg, 14px)!important;box-shadow:0 4px 20px #00000005!important;border:1px solid rgba(226,232,240,.8)!important}.directory-data-table th{padding:14px 18px!important;font-size:13.5px!important;letter-spacing:-.01em}.directory-data-table td{padding:14px 18px!important;font-size:13.5px!important}.admin-page .manage-layout-wrapper{--office-primary: #2d6a4f;--office-primary-dark: #1b4332;--office-primary-light: rgba(45, 106, 79, .08);--office-secondary: #1b4332;--office-secondary-dark: #1b4332;--office-secondary-light: rgba(45, 106, 79, .08);--office-gradient-primary: linear-gradient(135deg, #2d6a4f 0%, #1b4332 100%);--office-gradient-hover: linear-gradient(135deg, #1e4620 0%, #1b4332 100%);--office-gradient-glow: radial-gradient(circle at 50% 50%, rgba(45, 106, 79, .08) 0%, transparent 85%)}.notices-layout-wrapper{padding:24px;width:100%;min-height:calc(100vh - var(--header-height));box-sizing:border-box;display:flex;flex-direction:column;gap:20px}.notices-page-title-row{display:flex;align-items:center;justify-content:space-between;gap:16px}.notices-count-badge{background-color:var(--office-primary-light);color:var(--office-primary);border:1px solid rgba(37,99,235,.12);font-size:11.5px;font-weight:600;padding:2px 8px;border-radius:9999px}.notices-filters-card{background-color:var(--office-surface);border:1px solid var(--office-border);border-radius:var(--office-radius-md);box-shadow:var(--office-shadow-sm)}.notices-grid-dashboard{display:flex;flex-direction:column}.notices-cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px}.notice-announcement-card{background-color:var(--office-surface);border:1px solid var(--office-border);border-radius:var(--office-radius-md);padding:16px;display:flex;flex-direction:column;gap:12px;box-shadow:var(--office-shadow-sm);transition:var(--office-transition);position:relative;overflow:hidden}.notice-announcement-card:hover{transform:translateY(-2px);box-shadow:var(--office-shadow-md);border-color:#2563eb33}.notice-card-top-row{display:flex;justify-content:space-between;align-items:center}.notice-audience-tag{font-size:11px;font-weight:600;padding:2px 6px;background-color:var(--office-primary-light);color:var(--office-primary);border:1px solid rgba(37,99,235,.1);border-radius:4px}.notice-timestamp-label{font-size:11px;color:var(--office-muted)}.notice-announcement-title{font-size:14.5px;font-weight:650;color:var(--office-text);margin:0;line-height:1.3}.notice-announcement-body{font-size:13px;color:var(--office-muted);line-height:1.5;max-height:120px;overflow-y:auto;padding-right:4px}.notice-announcement-body a{color:var(--office-primary);text-decoration:underline}.notice-announcement-body ul,.notice-announcement-body ol{margin:4px 0;padding-left:20px}.notice-announcement-footer{display:flex;justify-content:space-between;align-items:center;padding-top:12px;border-top:1px solid var(--office-border);margin-top:auto}.notice-author-initials{display:flex;align-items:center;gap:6px;font-size:11.5px;color:var(--office-text)}.author-icon{opacity:.8}.author-name{font-weight:550}.notice-card-action-triggers{display:flex;gap:8px}.modal-dialog-box.size-large{max-width:600px}.rich-editor-editor-card{border:1px solid var(--office-border);border-radius:var(--office-radius-sm);background-color:var(--office-surface);overflow:hidden;display:flex;flex-direction:column}.rich-editor-toolbar-row{display:flex;align-items:center;gap:6px;background-color:var(--office-bg);border-bottom:1px solid var(--office-border);padding:6px 10px;flex-wrap:wrap}.rich-editor-toolbar-row button{background-color:var(--office-surface);border:1px solid var(--office-border);border-radius:4px;color:var(--office-text);padding:4px 8px;font-size:11px;font-weight:550;cursor:pointer;transition:var(--office-transition-fast)}.rich-editor-toolbar-row button:hover{background-color:var(--office-bg);border-color:var(--office-muted)}.toolbar-divider{width:1px;height:16px;background-color:var(--office-border);margin:0 4px}.color-picker-input{width:24px;height:20px;padding:0;border:1px solid var(--office-border);background-color:transparent;cursor:pointer;border-radius:4px}.rich-editor-sheet-area{min-height:150px;max-height:300px;outline:none;padding:12px;font-size:13.5px;color:var(--office-text);line-height:1.6;overflow-y:auto;background-color:var(--office-surface);text-align:left}.rich-editor-sheet-area[data-placeholder]:empty:before{content:attr(data-placeholder);color:var(--office-muted);font-style:italic;pointer-events:none}@media (max-width: 768px){.notices-page-title-row{flex-direction:column;align-items:flex-start;gap:12px}.notices-page-title-row button{width:100%;justify-content:center}.notices-cards-grid{grid-template-columns:1fr}}.checkboxes-selection-box{display:flex;flex-direction:column;gap:6px;max-height:150px;overflow-y:auto;border:1px solid var(--office-border);border-radius:var(--office-radius-sm);padding:10px;background-color:var(--office-bg)}.checkbox-node{display:flex;align-items:center;gap:10px;font-size:13px;color:var(--office-text);cursor:pointer;padding:6px 8px;border-radius:4px;transition:var(--office-transition-fast)}.checkbox-node:hover{background-color:var(--office-surface);box-shadow:var(--office-shadow-sm)}.checkbox-node input[type=checkbox]{width:16px;height:16px;accent-color:var(--office-primary);cursor:pointer;margin:0}.searchable-tags-wrapper{position:relative}.tags-input-container{display:flex;flex-wrap:wrap;gap:8px;padding:8px 12px;border:1px solid var(--office-border);border-radius:var(--office-radius-sm);background-color:var(--office-surface);min-height:42px;width:100%;box-sizing:border-box;align-items:center;transition:var(--office-transition-fast)}.tags-input-container:focus-within{border-color:var(--office-primary);box-shadow:0 0 0 2px #2563eb26}.tags-input-container .tags-list{display:flex;flex-wrap:wrap;gap:6px}.tags-input-container input[type=text]{flex:1;min-width:150px;border:none;outline:none;padding:4px 0;font-size:13px;color:var(--office-text);background:transparent}.tag-node{display:inline-flex;align-items:center;gap:6px;background-color:var(--office-primary-light);color:var(--office-primary);border:1px solid rgba(37,99,235,.15);border-radius:100px;padding:3px 10px;font-size:12px;font-weight:550}.tag-node button{background:none;border:none;font-size:14px;line-height:1;cursor:pointer;color:var(--office-primary);font-weight:700;padding:0;margin-left:2px;display:flex;align-items:center;justify-content:center;transition:color .15s}.tag-node button:hover{color:var(--office-danger)}.search-dropdown-menu{position:absolute;width:100%;z-index:50;border:1px solid var(--office-border);border-radius:var(--office-radius-sm);background-color:var(--office-surface);box-shadow:var(--office-shadow-lg);max-height:180px;overflow-y:auto;margin-top:4px;box-sizing:border-box}.search-result-item{padding:10px 14px;font-size:13px;color:var(--office-text);border-bottom:1px solid var(--office-border);cursor:pointer;transition:background .15s}.search-result-item:hover{background-color:var(--office-bg)}.search-result-item:last-child{border-bottom:none}.searching-indicator{padding:8px 12px;font-size:12px;color:var(--office-muted);font-style:italic}.scheduling-section-wrapper{display:grid;grid-template-columns:1fr;gap:12px;padding:14px;background-color:var(--office-bg);border-radius:var(--office-radius-sm);border:1px solid var(--office-border);box-sizing:border-box}@media (min-width: 640px){.scheduling-section-wrapper{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));align-items:end}}.checkbox-instant{display:flex;align-items:center;height:100%;margin-bottom:0}.attachments-drop-zone{border:2px dashed var(--office-border);border-radius:var(--office-radius-md);background-color:var(--office-bg);transition:var(--office-transition);cursor:pointer;margin-top:6px}.attachments-drop-zone:hover{border-color:var(--office-primary);background-color:#2563eb05}.drop-zone-label{display:flex;align-items:center;justify-content:center;padding:20px;font-size:13px;color:var(--office-muted);cursor:pointer;font-weight:500}.drop-zone-label span{display:flex;align-items:center;gap:8px}.uploading-files-list{margin-top:12px;display:flex;flex-direction:column;gap:8px}.uploading-files-list h5{margin:0 0 4px;font-size:12px;font-weight:600;color:var(--office-text)}.file-list-node{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;background-color:var(--office-surface);border:1px solid var(--office-border);border-radius:var(--office-radius-sm);font-size:12.5px;color:var(--office-text);transition:var(--office-transition)}.file-list-node.existing{background-color:#2563eb03;border-color:#2563eb26}.file-list-node:hover{box-shadow:var(--office-shadow-sm);border-color:var(--office-muted)}.file-list-node button{background:none;border:none;font-size:18px;color:var(--office-muted);cursor:pointer;line-height:1;padding:0;transition:color .15s}.file-list-node button:hover{color:var(--office-danger)}.feed-badge{font-size:11px;font-weight:600;padding:3px 8px;border-radius:9999px;text-transform:capitalize;display:inline-block}.feed-badge.general{background-color:#64748b14;color:#475569;border:1px solid rgba(100,116,139,.15)}.feed-badge.urgent{background-color:#ef444414;color:var(--office-danger);border:1px solid rgba(239,68,68,.15)}.feed-badge.exam{background-color:#4f46e514;color:var(--office-secondary);border:1px solid rgba(79,70,229,.15)}.feed-badge.fee{background-color:#f59e0b14;color:#d97706;border:1px solid rgba(245,158,11,.15)}.feed-badge.event{background-color:#10b98114;color:#059669;border:1px solid rgba(16,185,129,.15)}.feed-badge.holiday{background-color:#ec489914;color:#db2777;border:1px solid rgba(236,72,153,.15)}.feed-badge.scholarship{background-color:#06b6d414;color:#0891b2;border:1px solid rgba(6,182,212,.15)}.feed-badge.circular{background-color:#8b5cf614;color:#7c3aed;border:1px solid rgba(139,92,246,.15)}.card-attachments-list{margin-top:10px;padding:10px;background-color:var(--office-bg);border:1px solid var(--office-border);border-radius:var(--office-radius-sm);display:flex;flex-direction:column;gap:6px}.attachments-label-row{display:flex;align-items:center;gap:6px;font-size:11.5px;font-weight:600;color:var(--office-text)}.attachment-svg{width:14px;height:14px;color:var(--office-muted)}.attachments-links{display:flex;flex-wrap:wrap;gap:6px}.card-attachment-link{font-size:11px;color:var(--office-primary)!important;background-color:var(--office-surface);border:1px solid var(--office-border);padding:3px 8px;border-radius:4px;text-decoration:none!important;transition:var(--office-transition-fast);display:flex;align-items:center;gap:4px}.card-attachment-link:hover{background-color:var(--office-primary-light);border-color:#2563eb40}.notice-meta-details{display:flex;flex-direction:column;gap:4px;font-size:11px;color:var(--office-muted);line-height:1.3}.notice-meta-details strong{color:var(--office-text);font-weight:600}.office-chat-shell{padding:1rem;height:100%}.office-chat-layout{max-width:1320px;margin:0 auto;height:calc(100vh - 88px);display:grid;grid-template-columns:340px minmax(0,1fr);gap:1rem}.office-chat-list-panel,.office-chat-window-panel{background:#fff;border:1px solid #dbe5ef;border-radius:16px;box-shadow:0 4px 24px #0f172a0f;overflow:hidden;display:flex;flex-direction:column}.office-chat-panel-head{padding:1rem 1.1rem .75rem;border-bottom:1px solid #edf2f7;display:flex;align-items:baseline;justify-content:space-between;background:linear-gradient(135deg,#f8fafc,#f0f7ff)}.office-chat-panel-head h2{margin:0;font-size:1.05rem;font-weight:700;color:#0f172a;letter-spacing:-.01em}.office-chat-panel-head span{font-size:.78rem;color:#64748b;background:#e2eaf5;padding:.18rem .55rem;border-radius:999px}.office-chat-toolbar{padding:.65rem .9rem;border-bottom:1px solid #edf2f7;display:grid;gap:.5rem}.office-chat-toolbar input,.office-chat-toolbar select{width:100%;border:1px solid #d3deea;border-radius:8px;background:#f9fbfe;color:#0f172a;font-size:.84rem;padding:.5rem .7rem;outline:none;transition:border-color .15s,box-shadow .15s;box-sizing:border-box}.office-chat-toolbar input:focus,.office-chat-toolbar select:focus{border-color:var(--app-header-bg, #3b82f6);box-shadow:0 0 0 3px #3b82f61a}.office-new-dm-btn{width:100%;border:1px solid var(--app-header-bg, #3b82f6);background:#eff7ff;color:var(--app-header-bg, #2563eb);border-radius:8px;padding:.45rem .7rem;font-size:.8rem;font-weight:600;cursor:pointer;text-align:center;transition:background .15s,color .15s}.office-new-dm-btn:hover{background:var(--app-header-bg, #3b82f6);color:#fff}.office-student-dm-panel{border-bottom:1px solid #edf2f7;padding:.75rem .9rem;display:flex;flex-direction:column;gap:.5rem;background:#f8fbff}.office-student-dm-head{font-size:.82rem;font-weight:700;color:#334155}.office-student-dm-input{width:100%;border:1px solid #d3deea;border-radius:8px;background:#fff;color:#0f172a;font-size:.83rem;padding:.48rem .65rem;outline:none;transition:border-color .15s,box-shadow .15s;box-sizing:border-box}.office-student-dm-input:focus{border-color:var(--app-header-bg, #3b82f6);box-shadow:0 0 0 3px #3b82f61a}.office-student-dm-list{max-height:200px;overflow-y:auto;display:flex;flex-direction:column;gap:.3rem}.office-student-dm-item{display:flex;align-items:center;gap:.55rem;width:100%;text-align:left;border:1px solid #dce7f2;background:#fff;border-radius:10px;padding:.45rem .6rem;cursor:pointer;transition:background .12s,border-color .12s}.office-student-dm-item:hover{background:#eff7ff;border-color:#bfd9f3}.office-student-dm-avatar{width:30px;height:30px;border-radius:50%;background:linear-gradient(135deg,var(--app-header-bg, #3b82f6) 0%,#60a5fa 100%);color:#fff;font-size:.8rem;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.office-student-dm-info{display:flex;flex-direction:column;min-width:0}.office-student-dm-info strong{font-size:.82rem;color:#0f172a;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.office-student-dm-info span{font-size:.72rem;color:#64748b}.office-student-dm-status{font-size:.78rem;color:#94a3b8;padding:.4rem .2rem;display:flex;align-items:center;gap:.4rem}.office-conversation-list{flex:1;overflow-y:auto;padding:.5rem .6rem}.office-conversation-item{width:100%;text-align:left;border:1px solid transparent;background:#fff;border-radius:12px;padding:.6rem .75rem;cursor:pointer;margin-bottom:.3rem;display:flex;align-items:center;gap:.65rem;transition:background .15s,border-color .15s,box-shadow .15s}.office-conversation-item:hover{background:#f5faff;border-color:#d5e8f8;box-shadow:0 2px 8px #3b82f60f}.office-conversation-item.active{background:linear-gradient(135deg,#eff7ff,#e8f4fd);border-color:#bfd9f3;box-shadow:0 2px 10px #3b82f61a}.office-conv-avatar{width:38px;height:38px;border-radius:50%;background:linear-gradient(135deg,var(--app-header-bg, #3b82f6) 0%,#60a5fa 100%);color:#fff;font-size:.95rem;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 2px 6px #3b82f640}.office-conv-info{flex:1;min-width:0}.office-conv-row-top,.office-conv-row-bottom{display:flex;align-items:center;justify-content:space-between;gap:.4rem}.office-conv-row-top strong{font-size:.86rem;font-weight:600;color:#0f172a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.office-conv-row-top span{font-size:.7rem;color:#94a3b8;white-space:nowrap}.office-conv-row-bottom p{margin:.1rem 0 0;color:#64748b;font-size:.75rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:190px}.office-unread-dot{min-width:18px;height:18px;border-radius:999px;background:var(--app-header-bg, #2563eb);color:#fff;font-size:.66rem;font-weight:700;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.office-chat-window-panel{display:flex;flex-direction:column}.office-chat-window-head{padding:.85rem 1.1rem;border-bottom:1px solid #e6edf6;display:flex;align-items:center;justify-content:space-between;gap:.8rem;background:linear-gradient(135deg,#f8fafc,#f0f7ff)}.office-chat-head-info{display:flex;align-items:center;gap:.65rem}.office-chat-head-avatar{width:42px;height:42px;border-radius:50%;background:linear-gradient(135deg,var(--app-header-bg, #3b82f6) 0%,#60a5fa 100%);color:#fff;font-size:1.05rem;font-weight:700;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px #3b82f64d;flex-shrink:0}.office-chat-window-head h3{margin:0;color:#0f172a;font-size:.95rem;font-weight:600}.office-chat-window-head p{margin:.1rem 0 0;font-size:.73rem}.status-online{color:#16a34a;font-weight:600}.status-offline{color:#94a3b8}.office-chat-window-actions{display:flex;gap:.4rem}.office-chat-window-actions button{border:1px solid #d1ddee;background:#f8fbff;color:#334155;border-radius:8px;padding:.35rem .65rem;font-size:.76rem;cursor:pointer;display:flex;align-items:center;gap:.3rem;transition:background .15s,border-color .15s}.office-chat-window-actions button:hover{background:#eff7ff;border-color:#bfd9f3}.office-message-feed{flex:1;overflow-y:auto;padding:1rem 1.1rem;background:linear-gradient(180deg,#fbfdff,#f4f8fd);display:flex;flex-direction:column}.office-day-separator{text-align:center;margin:.5rem 0 .8rem}.office-day-separator span{font-size:.7rem;color:#64748b;background:#e9f0f8;border:1px solid #d2dfec;padding:.2rem .55rem;border-radius:999px}.office-message-row{margin-bottom:.75rem;max-width:74%}.office-message-row.incoming{margin-right:auto}.office-message-row.outgoing{margin-left:auto}.office-message-meta-name{font-size:.72rem;margin-bottom:.18rem;color:#64748b;font-weight:500}.office-message-row.outgoing .office-message-meta-name{text-align:right}.office-message-bubble{background:#fff;border:1px solid #dbe6f2;border-radius:12px 12px 12px 4px;padding:.55rem .75rem;font-size:.84rem;color:#0f172a;white-space:pre-wrap;line-height:1.5;box-shadow:0 1px 3px #0f172a0d}.office-message-row.outgoing .office-message-bubble{background:linear-gradient(135deg,#dbeafe,#eff6ff);border-color:#bfdbfe;border-bottom-left-radius:12px;border-bottom-right-radius:4px}.office-message-meta-time{margin-top:.22rem;font-size:.68rem;color:#94a3b8}.office-message-row.outgoing .office-message-meta-time{text-align:right}.office-composer-box{border-top:1px solid #e6edf6;padding:.75rem 1rem;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:.55rem;align-items:end;background:#fafcff}.office-composer-box textarea{width:100%;border:1px solid #d3deea;border-radius:10px;background:#fff;color:#0f172a;font-size:.85rem;padding:.55rem .75rem;outline:none;resize:none;min-height:42px;max-height:120px;transition:border-color .15s,box-shadow .15s;box-sizing:border-box;font-family:inherit}.office-composer-box textarea:focus{border-color:var(--app-header-bg, #3b82f6);box-shadow:0 0 0 3px #3b82f61a}.office-attach-btn{width:40px;height:40px;border:1px solid #d1ddee;background:#f8fbff;color:#64748b;border-radius:10px;display:flex;align-items:center;justify-content:center;cursor:not-allowed;opacity:.55}.office-send-btn{height:40px;min-width:82px;border:none;background:var(--app-header-bg, #3b82f6);color:#fff;border-radius:10px;padding:0 1rem;font-size:.82rem;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.35rem;transition:opacity .15s,transform .1s;box-shadow:0 2px 8px #3b82f64d}.office-send-btn:hover:not(:disabled){opacity:.9;transform:translateY(-1px)}.office-send-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.office-chat-empty{color:#94a3b8;font-size:.84rem;text-align:center;padding:2rem 1rem;display:flex;flex-direction:column;align-items:center;gap:.5rem}.office-chat-window-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#94a3b8;text-align:center;padding:2rem}.office-chat-window-empty h3{margin:0 0 .4rem;color:#334155;font-size:1.1rem}.office-chat-window-empty p{margin:0;font-size:.84rem}.office-chat-spinner{width:20px;height:20px;border:2.5px solid #e2e8f0;border-top-color:var(--app-header-bg, #3b82f6);border-radius:50%;animation:officeChatSpin .65s linear infinite}.office-chat-spinner.small{width:15px;height:15px;border-width:2px}@keyframes officeChatSpin{to{transform:rotate(360deg)}}@media (max-width: 1024px){.office-chat-layout{grid-template-columns:290px minmax(0,1fr)}}@media (max-width: 860px){.office-chat-layout{height:auto;grid-template-columns:1fr}.office-chat-list-panel,.office-chat-window-panel{min-height:360px}.office-chat-shell{height:auto}}.promotions-container{max-width:1280px;margin:0 auto;font-family:Outfit,Inter,sans-serif;color:var(--office-text);position:relative;display:flex;flex-direction:column;gap:20px}.promotions-header{margin-bottom:8px}.promotions-header h2{font-size:1.8rem;font-weight:700;color:var(--office-text);margin-bottom:6px}.promotions-header .subtitle{font-size:.95rem;color:var(--office-muted)}.promotions-tabs{display:flex;gap:12px;border-bottom:1px solid var(--office-border);padding-bottom:12px}.promo-tab-btn{display:flex;align-items:center;gap:8px;padding:10px 18px;background:var(--office-surface);border:1px solid var(--office-border);border-radius:var(--office-radius-sm);color:var(--office-muted);font-size:.95rem;font-weight:600;cursor:pointer;transition:var(--office-transition)}.promo-tab-btn:hover{background:#2563eb0d;color:var(--office-primary);border-color:#2563eb4d}.promo-tab-btn.active{background:#2563eb14;border-color:var(--office-primary);color:var(--office-primary);box-shadow:var(--office-shadow-sm)}.promo-overlay-loading{position:absolute;top:0;left:0;right:0;bottom:0;background:#ffffffb3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:100;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:var(--office-radius-md)}.promo-overlay-loading .spinner{width:40px;height:40px;border:3px solid rgba(37,99,235,.1);border-top-color:var(--office-primary);border-radius:50%;animation:promo-spin 1s linear infinite;margin-bottom:16px}@keyframes promo-spin{to{transform:rotate(360deg)}}.promo-error-card{background:#ef44440f;border:1px solid rgba(239,68,68,.2);border-radius:var(--office-radius-md);padding:40px;text-align:center;color:var(--office-danger);max-width:600px;margin:40px auto;display:flex;flex-direction:column;align-items:center;gap:12px}.promo-error-card h3{font-size:1.4rem;font-weight:700;color:var(--office-text);margin:0}.promo-error-card p{color:var(--office-muted);font-size:.95rem;margin:0}.promote-content-grid{display:grid;grid-template-columns:360px 1fr;gap:20px}@media (max-width: 1024px){.promote-content-grid{grid-template-columns:1fr}}.glass-card{background:var(--office-surface);border:1px solid var(--office-border);border-radius:var(--office-radius-md);padding:24px;box-shadow:var(--office-shadow-sm)}.panel-card{display:flex;flex-direction:column;gap:16px}.panel-header{margin-bottom:8px}.panel-header h3{font-size:1.15rem;font-weight:700;display:flex;align-items:center;gap:8px;margin:0 0 4px}.step-badge{background:var(--office-primary);color:#fff;width:22px;height:22px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:700}.panel-header p{font-size:.85rem;color:var(--office-muted);margin:0}.form-group-modern{display:flex;flex-direction:column;gap:6px}.form-group-modern label{font-size:.85rem;font-weight:600;color:var(--office-text)}.form-group-modern select,.form-group-modern input{padding:10px 12px;background:var(--office-surface);border:1px solid var(--office-border);border-radius:var(--office-radius-sm);color:var(--office-text);font-size:.9rem;font-family:inherit;transition:var(--office-transition)}.form-group-modern select:focus,.form-group-modern input:focus{border-color:var(--office-primary);outline:none;box-shadow:0 0 0 3px #2563eb1a}.disabled-input-field{background:var(--office-border)!important;opacity:.8;cursor:not-allowed}.divider-line{height:1px;background:var(--office-border);margin:8px 0}.promote-submit-btn{background:var(--office-primary);color:#fff;border:none;padding:12px;font-size:.95rem;font-weight:700;border-radius:var(--office-radius-sm);cursor:pointer;transition:var(--office-transition);margin-top:10px}.promote-submit-btn:hover:not(:disabled){background:#1d4ed8;transform:translateY(-1px);box-shadow:var(--office-shadow-md)}.promote-submit-btn:disabled{background:var(--office-border);color:var(--office-muted);cursor:not-allowed}.students-list-card{display:flex;flex-direction:column;gap:16px;max-height:820px}.list-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;border-bottom:1px solid var(--office-border);padding-bottom:16px}.list-header h3{font-size:1.15rem;font-weight:700;margin:0 0 4px}.list-header p{font-size:.85rem;color:var(--office-muted);margin:0}.checkbox-select-all{display:flex;align-items:center;gap:8px;font-size:.9rem;font-weight:600;cursor:pointer}.checkbox-select-all input{cursor:pointer}.students-list-scrollable{flex-grow:1;overflow-y:auto;border:1px solid var(--office-border);border-radius:var(--office-radius-sm);background:var(--office-surface);min-height:300px}.empty-students-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:80px 24px;text-align:center;color:var(--office-muted)}.empty-students-state p{margin:0;font-size:.95rem}.promo-students-table{width:100%;border-collapse:collapse;text-align:left;font-size:.9rem}.promo-students-table th,.promo-students-table td{padding:12px 16px;border-bottom:1px solid var(--office-border)}.promo-students-table th{background:#00000005;font-weight:700;color:var(--office-text);position:sticky;top:0;z-index:10}.promo-students-table tr:hover{background:#2563eb05}.promo-students-table tr.row-selected{background:#2563eb0a}.promo-students-table input[type=checkbox]{cursor:pointer}.code-tag{background:#0000000d;padding:2px 6px;border-radius:4px;font-family:monospace}.archive-panel{display:flex;flex-direction:column;gap:20px}.archive-header-row{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;border-bottom:1px solid var(--office-border);padding-bottom:16px}.archive-header-row h3{font-size:1.2rem;font-weight:700;margin:0 0 4px}.archive-header-row p{font-size:.85rem;color:var(--office-muted);margin:0}.promo-refresh-btn{display:flex;align-items:center;gap:6px;padding:8px 14px;background:var(--office-surface);border:1px solid var(--office-border);border-radius:var(--office-radius-sm);color:var(--office-text);font-size:.85rem;font-weight:600;cursor:pointer;transition:var(--office-transition)}.promo-refresh-btn:hover{background:#00000005;border-color:var(--office-muted)}.archive-table-scrollable{overflow-x:auto;border:1px solid var(--office-border);border-radius:var(--office-radius-sm)}.archive-table{width:100%;border-collapse:collapse;text-align:left;font-size:.9rem}.archive-table th,.archive-table td{padding:14px 18px;border-bottom:1px solid var(--office-border)}.archive-table th{background:#00000005;font-weight:700}.badge-div{background:#2563eb1a;color:var(--office-primary);padding:3px 8px;border-radius:var(--office-radius-sm);font-weight:700;font-size:.8rem}.badge-count{background:#0000000d;padding:3px 8px;border-radius:var(--office-radius-sm);font-weight:600;font-size:.8rem}.status-pill{padding:4px 10px;border-radius:999px;font-size:.8rem;font-weight:700}.status-pill.completed{background:#10b9811a;color:var(--office-success)}.status-pill.partial{background:#f59e0b1a;color:var(--office-warning)}.status-pill.active{background:#2563eb1a;color:var(--office-primary)}.btn-action{padding:6px 12px;font-size:.8rem;font-weight:700;border-radius:var(--office-radius-sm);cursor:pointer;transition:var(--office-transition)}.reopen-btn{background:var(--office-surface);border:1px solid rgba(239,68,68,.3);color:var(--office-danger)}.reopen-btn:hover{background:#ef44440d}.freeze-btn{background:var(--office-success);border:none;color:#fff}.freeze-btn:hover{background:#059669}.empty-archives-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:80px 24px;text-align:center;color:var(--office-muted)}.elibrary-container{padding:24px;background-color:var(--office-bg);min-height:100vh;font-family:var(--office-font-family)}.elibrary-header-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;border-bottom:1px solid var(--office-border);padding-bottom:16px;flex-wrap:wrap;gap:16px}.elibrary-title{font-size:28px;font-weight:700;color:var(--office-text);margin:0 0 4px}.elibrary-subtitle{font-size:14px;color:var(--office-muted);margin:0}.elibrary-tab-buttons{display:flex;background-color:var(--office-border);padding:4px;border-radius:var(--office-radius-md);gap:4px}.tab-btn{background:none;border:none;padding:8px 16px;font-size:14px;font-weight:600;border-radius:var(--office-radius-sm);color:var(--office-muted);cursor:pointer;transition:var(--office-transition)}.tab-btn:hover{color:var(--office-text)}.tab-btn.active{background-color:var(--office-surface);color:var(--office-primary);box-shadow:var(--office-shadow-sm)}.search-bar-row{margin-bottom:20px}.search-input{width:100%;padding:12px 16px;border:1px solid var(--office-border);border-radius:var(--office-radius-md);font-size:14px;transition:var(--office-transition);background-color:var(--office-surface);box-sizing:border-box}.search-input:focus{border-color:var(--office-primary);outline:none;box-shadow:0 0 0 3px var(--office-primary-light)}.ebooks-cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:20px}.ebook-card{background-color:var(--office-surface);border-radius:var(--office-radius-md);border:1px solid var(--office-border);overflow:hidden;box-shadow:var(--office-shadow-sm);transition:var(--office-transition);display:flex;flex-direction:column}.ebook-card:hover{transform:translateY(-4px);box-shadow:var(--office-shadow-md)}.ebook-cover-wrapper{position:relative;height:260px;background-color:#f1f5f9;display:flex;align-items:center;justify-content:center;overflow:hidden}.ebook-cover-img{width:100%;height:100%;object-fit:cover}.ebook-cover-placeholder{display:flex;flex-direction:column;align-items:center;color:var(--office-muted)}.ebook-cover-placeholder span{font-size:48px;margin-bottom:8px}.view-overlay-btn{position:absolute;bottom:12px;left:50%;transform:translate(-50%) translateY(40px);background-color:var(--office-primary);color:#fff;border:none;padding:8px 16px;border-radius:9999px;font-size:13px;font-weight:600;cursor:pointer;opacity:0;transition:var(--office-transition);box-shadow:var(--office-shadow-md)}.ebook-cover-wrapper:hover .view-overlay-btn{transform:translate(-50%) translateY(0);opacity:1}.ebook-details-block{padding:16px;display:flex;flex-direction:column;flex-grow:1}.ebook-card-title{font-size:15px;font-weight:600;color:var(--office-text);margin:0 0 6px;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;height:42px}.ebook-card-authors{font-size:13px;color:var(--office-muted);margin:0 0 4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ebook-card-pub{font-size:11px;color:var(--office-muted);margin:0 0 8px}.ebook-card-domains{display:flex;flex-wrap:wrap;gap:4px;margin-top:auto}.domain-pill{font-size:10px;font-weight:600;background-color:var(--office-primary-light);color:var(--office-primary);padding:2px 6px;border-radius:9999px}.domain-pill.compact{font-size:9px;padding:1px 4px}.ebook-form-card{background-color:var(--office-surface);border-radius:var(--office-radius-lg);border:1px solid var(--office-border);padding:28px;box-shadow:var(--office-shadow-sm)}.form-sections-row{display:flex;gap:32px}.form-left-col{flex:1.2}.form-right-col{flex:.8;border-left:1px solid var(--office-border);padding-left:32px}.section-header-label{font-size:18px;font-weight:700;color:var(--office-text);margin:0 0 8px}.section-info-desc{font-size:13px;color:var(--office-muted);margin:0 0 20px;line-height:1.4}.authors-form-grid,.domains-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.files-upload-block{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:16px}.file-uploader-box{position:relative}.file-uploader-box input[type=file]{display:none}.file-uploader-label{display:flex;align-items:center;justify-content:center;border:2px dashed var(--office-border);border-radius:var(--office-radius-md);padding:16px;background-color:var(--office-bg);cursor:pointer;transition:var(--office-transition);min-height:90px;text-align:center}.file-uploader-label:hover{border-color:var(--office-primary);background-color:var(--office-primary-light)}.cover-img-preview-box img{height:70px;object-fit:cover;border-radius:var(--office-radius-sm);margin-bottom:4px}.cover-img-preview-box{display:flex;flex-direction:column;align-items:center;font-size:12px;color:var(--office-primary);font-weight:600}.pdf-preview-box{display:flex;flex-direction:column;align-items:center;font-size:12px;color:var(--office-text)}.pdf-preview-box .change-btn{margin-top:4px;font-weight:600;color:var(--office-primary)}.upload-prompt{font-size:13px;color:var(--office-muted);font-weight:500}.mapping-card-block{background-color:var(--office-bg);border:1px solid var(--office-border);border-radius:var(--office-radius-md);padding:16px;margin-bottom:16px;position:relative}.mapping-index-badge{position:absolute;top:12px;right:16px;font-size:11px;font-weight:700;color:var(--office-muted)}.form-action-footer{display:flex;justify-content:flex-end;gap:12px;margin-top:24px;padding-top:20px;border-top:1px solid var(--office-border)}.table-container{background-color:var(--office-surface);border-radius:var(--office-radius-md);border:1px solid var(--office-border);overflow-x:auto}.table-cover-cell{width:60px}.table-cover-img{width:48px;height:64px;object-fit:cover;border-radius:var(--office-radius-sm);box-shadow:var(--office-shadow-sm)}.table-cover-placeholder{width:48px;height:64px;background-color:var(--office-bg);display:flex;align-items:center;justify-content:center;border-radius:var(--office-radius-sm);font-size:24px;color:var(--office-muted)}.book-title-clickable{color:var(--office-text);cursor:pointer;transition:var(--office-transition)}.book-title-clickable:hover{color:var(--office-primary)}.table-mapping-list{margin:0;padding-left:16px;font-size:12px;color:var(--office-muted);list-style-type:disc}.table-mapping-list li{margin-bottom:2px}.flex-wrap-pills{display:flex;flex-wrap:wrap;gap:4px}.table-action-buttons{display:flex;gap:6px;justify-content:center}.table-action-buttons button{padding:4px 8px;font-size:12px;font-weight:600;border-radius:var(--office-radius-sm);cursor:pointer;border:none;transition:var(--office-transition)}.action-btn-view{background-color:var(--office-primary-light);color:var(--office-primary)}.action-btn-view:hover{background-color:var(--office-primary);color:#fff}.action-btn-edit{background-color:#fef3c7;color:#d97706}.action-btn-edit:hover{background-color:#d97706;color:#fff}.action-btn-delete{background-color:#fee2e2;color:#dc2626}.action-btn-delete:hover{background-color:#dc2626;color:#fff}.book-preview-modal{width:90%;max-width:900px;height:85vh;display:flex;flex-direction:column}.modal-title-row{display:flex;flex-direction:column}.modal-title-row h3{margin:0 0 4px;font-size:18px}.modal-authors{font-size:12px;color:var(--office-muted)}.pdf-reader-body{flex-grow:1;padding:0!important;background-color:#525659}.pdf-iframe-view{border:none}.loading-spinner-wrapper{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px;gap:12px;color:var(--office-muted)}.empty-state-card{text-align:center;padding:48px;border:1px dashed var(--office-border);border-radius:var(--office-radius-lg);background-color:var(--office-surface);color:var(--office-muted)}.empty-state-card h3{color:var(--office-text);margin-top:0}@media (max-width: 1024px){.form-sections-row{flex-direction:column;gap:20px}.form-right-col{border-left:none;padding-left:0;margin-top:20px;border-top:1px solid var(--office-border);padding-top:20px}}@media (max-width: 768px){.files-upload-block,.authors-form-grid,.domains-form-grid{grid-template-columns:1fr}.elibrary-header-row{flex-direction:column;align-items:flex-start}}.bulk-import-container{padding:24px;background-color:var(--office-bg);min-height:100vh;font-family:var(--office-font-family);color:var(--office-text);box-sizing:border-box}.bulk-import-header{margin-bottom:24px;border-bottom:1px solid var(--office-border);padding-bottom:16px}.bulk-import-title{font-size:28px;font-weight:700;color:var(--office-text);margin:0 0 4px}.bulk-import-subtitle{font-size:14px;color:var(--office-muted);margin:0}.import-mode-buttons{display:inline-flex;background-color:var(--office-border);padding:4px;border-radius:var(--office-radius-md);gap:4px;margin-bottom:20px}.import-mode-buttons .tab-btn{background:none;border:none;padding:10px 18px;font-size:13.5px;font-weight:600;border-radius:var(--office-radius-sm);color:var(--office-muted);cursor:pointer;transition:var(--office-transition);display:flex;align-items:center;gap:8px}.import-mode-buttons .tab-btn:hover{color:var(--office-text)}.import-mode-buttons .tab-btn.active{background-color:var(--office-surface);color:var(--office-primary);box-shadow:var(--office-shadow-sm)}.upload-fields-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px}.form-input-control{display:flex;flex-direction:column;gap:8px}.form-input-control label{font-size:12.5px;font-weight:600;color:var(--office-text)}.form-input-control input[type=file]{padding:10px;border:1px dashed var(--office-border);border-radius:var(--office-radius-md);background-color:var(--office-bg);cursor:pointer;font-size:13px;transition:var(--office-transition)}.form-input-control input[type=file]:hover{border-color:var(--office-primary);background-color:var(--office-primary-light)}.scan-files-list{list-style:none;padding:0;margin:16px 0;display:flex;flex-direction:column;gap:8px}.scan-files-list li{padding:10px 14px;border-radius:var(--office-radius-md);font-size:13px;font-weight:500;display:flex;align-items:center;gap:10px;border:1px solid var(--office-border)}.scan-files-list li.exists{background-color:#10b9810d;border-color:#10b98133;color:#065f46}.scan-files-list li.missing{background-color:#ef44440d;border-color:#ef444426;color:#991b1b}.upload-progress-list{display:flex;flex-direction:column;gap:16px}.progress-item{border:1px solid var(--office-border);border-radius:var(--office-radius-md);padding:16px;background-color:var(--office-bg)}.progress-details-header{display:flex;justify-content:space-between;font-size:13px;font-weight:600;margin-bottom:8px}.status-label{font-size:11px;padding:2px 8px;border-radius:9999px;font-weight:700}.status-label.pending{background-color:var(--office-border);color:var(--office-muted)}.status-label.uploading{background-color:#dbeafe;color:#1e40af}.status-label.assembling{background-color:#fef3c7;color:#92400e}.status-label.completed{background-color:#dcfce7;color:#166534}.progress-bar-fill.uploading{background-color:var(--office-primary)}.progress-bar-fill.assembling{background-color:#fbbf24}.progress-bar-fill.completed{background-color:#10b981}.progress-item-percent{font-size:11.5px;text-align:right;margin-top:4px;font-weight:700;color:var(--office-muted)}.process-progress-wrapper{display:flex;align-items:center;gap:32px;flex-wrap:wrap;justify-content:center}.circle-progress-wrapper{position:relative}.progress-circle-ring{width:140px;height:140px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:background .3s ease}.progress-circle-inner{width:118px;height:118px;background-color:var(--office-surface);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:700;color:var(--office-text);box-shadow:inset 0 2px 4px #0000000d}.process-text-info{flex:1;min-width:250px}.status-text-title{font-size:18px;margin:0 0 8px;font-weight:700}.current-book-display{font-size:14px;background-color:var(--office-bg);padding:10px 14px;border-radius:var(--office-radius-md);border-left:4px solid var(--office-primary);margin-bottom:12px}.process-metrics-row{display:flex;gap:20px;font-size:12.5px;color:var(--office-muted);flex-wrap:wrap}.kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:16px;margin-bottom:24px}.kpi-card{background-color:var(--office-surface);border:1px solid var(--office-border);border-radius:var(--office-radius-md);padding:16px;text-align:center;box-shadow:var(--office-shadow-sm);display:flex;flex-direction:column;gap:4px}.kpi-value{font-size:32px;font-weight:800;line-height:1}.kpi-label{font-size:12px;font-weight:600;color:var(--office-muted);text-transform:uppercase;letter-spacing:.5px}.details-bullets-list{padding-left:20px;margin:0;display:flex;flex-direction:column;gap:8px;font-size:13.5px}.preview-header-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;flex-wrap:wrap;gap:12px}.tab-filters-row{display:flex;background-color:var(--office-bg);padding:3px;border-radius:var(--office-radius-sm);border:1px solid var(--office-border)}.filter-btn{background:none;border:none;padding:6px 12px;font-size:12px;font-weight:600;color:var(--office-muted);cursor:pointer;border-radius:var(--office-radius-xs);transition:var(--office-transition)}.filter-btn:hover{color:var(--office-text)}.filter-btn.active{background-color:var(--office-surface);color:var(--office-primary);box-shadow:var(--office-shadow-xs)}.preview-table-wrapper{max-height:400px;overflow-y:auto;border:1px solid var(--office-border);border-radius:var(--office-radius-md);background-color:var(--office-bg)}.preview-table{width:100%;border-collapse:collapse;text-align:left;font-size:13px}.preview-table th{background-color:var(--office-surface);padding:12px 16px;font-weight:700;border-bottom:2px solid var(--office-border);position:sticky;top:0;z-index:10}.preview-table td{padding:12px 16px;border-bottom:1px solid var(--office-border)}.preview-table tr.valid{background-color:#10b98103}.preview-table tr.duplicate{background-color:#f59e0b03}.preview-table tr.invalid{background-color:#ef444403}.status-badge-pill{font-size:10.5px;font-weight:700;padding:2px 8px;border-radius:9999px;text-transform:uppercase}.status-badge-pill.valid{background-color:#dcfce7;color:#166534}.status-badge-pill.duplicate{background-color:#fef3c7;color:#92400e}.status-badge-pill.invalid{background-color:#fee2e2;color:#991b1b}.loader-block{text-align:center;padding:40px;color:var(--office-muted);font-weight:600}.pagination-bar{display:flex;justify-content:center;align-items:center;gap:16px;margin-top:16px}.page-indicator{font-size:13px;font-weight:600;color:var(--office-muted)}.page-nav-btn{background-color:var(--office-surface);border:1px solid var(--office-border);padding:6px 12px;border-radius:var(--office-radius-sm);font-size:12px;font-weight:600;cursor:pointer}.page-nav-btn:disabled{opacity:.5;cursor:not-allowed}.reports-buttons-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}.report-download-btn{padding:12px;text-align:center;border-radius:var(--office-radius-md);font-weight:600;text-decoration:none;font-size:13px;transition:var(--office-transition);border:1px solid var(--office-border);background-color:var(--office-surface)}.report-download-btn.json{color:#2563eb;border-color:#2563eb33}.report-download-btn.json:hover{background-color:#2563eb0d}.report-download-btn.csv{color:#dc2626;border-color:#dc262633}.report-download-btn.csv:hover{background-color:#dc26260d}.report-download-btn.summary{color:#059669;border-color:#05966933}.report-download-btn.summary:hover{background-color:#0596690d}.import-action-bar-bottom{display:flex;justify-content:flex-end;gap:12px;border-top:1px solid var(--office-border);padding-top:16px;margin-top:16px}.checkbox-control{display:flex;align-items:center;font-size:13.5px}.checkbox-control label{cursor:pointer;display:flex;align-items:center;gap:8px}.checkbox-control input{width:16px;height:16px;cursor:pointer}.office-grid-wrapper{padding:24px;width:100%;min-height:calc(100vh - var(--header-height));box-sizing:border-box}.dashboard-layout-container{display:flex;flex-direction:column;gap:24px}.stats-row-container{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}.stats-metric-card{background-color:var(--office-surface);border:1px solid var(--office-border);border-radius:var(--office-radius-md);padding:16px;display:flex;align-items:center;gap:14px;box-shadow:var(--office-shadow-sm);transition:var(--office-transition)}.stats-metric-card:hover{transform:translateY(-2px);box-shadow:var(--office-shadow-md);border-color:#2563eb33}.metric-icon-box{width:42px;height:42px;border-radius:var(--office-radius-sm);display:flex;align-items:center;justify-content:center;flex-shrink:0}.metric-icon-box.students{background-color:#2563eb14;color:var(--office-primary)}.metric-icon-box.departments{background-color:#4f46e514;color:var(--office-secondary)}.metric-icon-box.divisions{background-color:#10b98114;color:var(--office-success)}.metric-icon-box.upload{background-color:#f59e0b14;color:var(--office-warning)}.metric-svg{width:20px;height:20px}.metric-text-group{display:flex;flex-direction:column}.metric-value{font-size:20px;font-weight:700;color:var(--office-text);line-height:1.2}.metric-title{font-size:11px;color:var(--office-muted);font-weight:500;text-transform:uppercase;letter-spacing:.05em;margin-top:2px}.wizard-main-card{background-color:var(--office-surface);border:1px solid var(--office-border);border-radius:var(--office-radius-lg);padding:24px;box-shadow:var(--office-shadow-sm);display:flex;flex-direction:column;gap:20px}.wizard-header h2{font-size:18px;font-weight:650;color:var(--office-text);margin:0}.wizard-header p{font-size:13px;color:var(--office-muted);margin:4px 0 0}.steps-progress-container{position:relative;display:flex;align-items:center;margin:10px 0 20px;padding:0 10px}.progress-track-line{position:absolute;top:16px;left:0;right:0;height:2px;background-color:var(--office-border);z-index:1}.progress-fill-line{position:absolute;top:16px;left:0;height:2px;background-color:var(--office-primary);z-index:2;transition:width .3s ease}.steps-indicator-nodes{display:flex;justify-content:space-between;width:100%;position:relative;z-index:3}.step-node{display:flex;flex-direction:column;align-items:center;gap:8px}.node-circle{width:32px;height:32px;background-color:var(--office-surface);border:2px solid var(--office-border);color:var(--office-muted);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:600;transition:var(--office-transition)}.node-label{font-size:11.5px;color:var(--office-muted);font-weight:500;transition:var(--office-transition)}.step-node.active .node-circle{border-color:var(--office-primary);background-color:var(--office-primary);color:#fff}.step-node.current .node-circle{box-shadow:0 0 0 4px #2563eb26;border-color:var(--office-primary);background-color:var(--office-surface);color:var(--office-primary)}.step-node.active .node-label{color:var(--office-text);font-weight:550}.wizard-form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.form-input-control{display:flex;flex-direction:column;gap:6px}.form-input-control.full-span{grid-column:span 2}.form-input-control label{font-size:12.5px;font-weight:550;color:var(--office-text)}.form-input-control label .req{color:var(--office-danger)}.form-input-control label .hint{font-size:11px;color:var(--office-muted);font-weight:400}.form-input-control select,.form-input-control input{padding:8px 12px;font-size:13.5px;border:1px solid var(--office-border);background-color:var(--office-surface);color:var(--office-text);border-radius:var(--office-radius-sm);outline:none;font-family:inherit;transition:var(--office-transition-fast)}.form-input-control select:focus,.form-input-control input:focus{border-color:var(--office-primary);box-shadow:0 0 0 3px #2563eb14}.form-input-control select:disabled,.form-input-control input:disabled{background-color:var(--office-bg);cursor:not-allowed;opacity:.7}.wizard-btn-primary{background-color:var(--office-primary);color:#fff;border:1px solid var(--office-primary);padding:8px 16px;font-size:13px;font-weight:550;border-radius:var(--office-radius-sm);cursor:pointer;display:inline-flex;align-items:center;gap:6px;transition:var(--office-transition-fast)}.wizard-btn-primary:hover:not(:disabled){background-color:var(--office-primary-dark);border-color:var(--office-primary-dark)}.wizard-btn-primary:disabled{opacity:.5;cursor:not-allowed}.wizard-btn-outline{background-color:transparent;color:var(--office-text);border:1px solid var(--office-border);padding:8px 16px;font-size:13px;font-weight:550;border-radius:var(--office-radius-sm);cursor:pointer;display:inline-flex;align-items:center;gap:6px;transition:var(--office-transition-fast)}.wizard-btn-outline:hover{background-color:var(--office-bg);border-color:var(--office-muted)}.wizard-btn-outline.text-primary{color:var(--office-primary);border-color:#2563eb40;background-color:#2563eb05}.wizard-btn-outline.text-primary:hover{background-color:#2563eb0f}.btn-icon-svg{width:15px;height:15px}.wizard-action-footer{margin-top:12px;padding-top:16px;border-top:1px solid var(--office-border);display:flex;justify-content:flex-end;gap:12px}.wizard-action-footer.flex-between{justify-content:space-between}.wizard-action-footer.flex-end{justify-content:flex-end}.upload-section-action-box{display:flex;flex-direction:column;gap:16px}.download-template-card-box{display:flex;align-items:center;justify-content:space-between;background-color:var(--office-bg);border:1px solid var(--office-border);border-radius:var(--office-radius-md);padding:14px 18px}.template-info h4{font-size:13.5px;font-weight:600;color:var(--office-text);margin:0}.template-info p{font-size:11.5px;color:var(--office-muted);margin:2px 0 0}.drag-drop-file-wrapper{position:relative;width:100%}.drag-drop-file-wrapper input[type=file]{position:absolute;width:0;height:0;overflow:hidden;opacity:0}.drag-drop-area-label{display:flex;flex-direction:column;align-items:center;justify-content:center;border:2px dashed var(--office-border);border-radius:var(--office-radius-lg);padding:32px;background-color:#f8fafc80;cursor:pointer;transition:var(--office-transition);text-align:center;min-height:150px;box-sizing:border-box}.drag-drop-area-label:hover{border-color:var(--office-primary);background-color:#2563eb05}.drag-drop-cloud-icon{width:44px;height:44px;border-radius:50%;background-color:var(--office-bg);display:flex;align-items:center;justify-content:center;color:var(--office-muted);margin-bottom:12px;transition:var(--office-transition-fast)}.drag-drop-area-label:hover .drag-drop-cloud-icon{background-color:var(--office-primary-light);color:var(--office-primary);transform:translateY(-2px)}.cloud-svg{width:22px;height:22px}.file-prompt-info{display:flex;flex-direction:column;gap:4px}.file-prompt-info strong{font-size:13.5px;color:var(--office-text)}.file-prompt-info span{font-size:11.5px;color:var(--office-muted)}.file-metadata-info{display:flex;flex-direction:column;align-items:center;gap:2px}.metadata-name{font-size:13.5px;font-weight:600;color:var(--office-primary);max-width:350px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.metadata-size{font-size:11px;color:var(--office-muted)}.metadata-change-label{font-size:11px;font-weight:500;color:var(--office-muted);text-decoration:underline;margin-top:6px}.alert-banner{display:flex;align-items:flex-start;gap:10px;padding:10px 14px;border-radius:var(--office-radius-sm);font-size:12.5px;box-sizing:border-box}.alert-banner.error{background-color:#ef44440f;border:1px solid rgba(239,68,68,.15);color:var(--office-danger)}.alert-banner.success{background-color:#10b9810f;border:1px solid rgba(16,185,129,.15);color:var(--office-success)}.alert-banner-svg{width:16px;height:16px;flex-shrink:0;margin-top:1px}.alert-banner-text{flex:1}.preview-table-box{border:1px solid var(--office-border);border-radius:var(--office-radius-md);overflow-x:auto;max-height:250px}.preview-records-table{width:100%;border-collapse:collapse;text-align:left;font-size:12.5px}.preview-records-table th{background-color:var(--office-bg);color:var(--office-text);font-weight:600;padding:8px 12px;border-bottom:1px solid var(--office-border)}.preview-records-table td{padding:8px 12px;border-bottom:1px solid var(--office-border);color:var(--office-text)}.preview-records-table tr:last-child td{border-bottom:none}.code-tag{background-color:var(--office-bg);border:1px solid var(--office-border);padding:2px 6px;border-radius:4px;font-size:11.5px;color:var(--office-text);font-family:monospace}.font-password{font-weight:600;color:var(--office-primary)}.preview-records-more-label{padding:10px;text-align:center;font-size:11.5px;color:var(--office-muted);background-color:var(--office-bg);border-top:1px solid var(--office-border)}.modal-wrapper-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#0f172a66;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1100;padding:20px}.modal-dialog-box{background-color:var(--office-surface);border:1px solid var(--office-border);border-radius:var(--office-radius-lg);box-shadow:var(--office-shadow-xl);max-width:480px;width:100%;display:flex;flex-direction:column;max-height:90vh;box-sizing:border-box}.modal-dialog-header{padding:20px 20px 16px;border-bottom:1px solid var(--office-border)}.modal-dialog-header h3{font-size:16px;font-weight:650;color:var(--office-text);margin:0}.modal-dialog-header p{font-size:12.5px;color:var(--office-muted);margin:4px 0 0}.modal-dialog-body{padding:20px;overflow-y:auto;display:flex;flex-direction:column;gap:16px}.modal-dialog-footer{padding:16px 20px;border-top:1px solid var(--office-border);display:flex;justify-content:flex-end;gap:12px}.allocation-rows-grid{display:flex;flex-direction:column;gap:8px;max-height:180px;overflow-y:auto;border:1px solid var(--office-border);border-radius:var(--office-radius-sm);padding:8px}.allocation-row-card{display:flex;align-items:center;justify-content:space-between;padding:6px 10px;background-color:var(--office-bg);border-radius:var(--office-radius-sm)}.allocation-batch-label{font-size:12px;font-weight:550;color:var(--office-text)}.form-input-control.no-margin{gap:0;width:100px}.form-input-control.no-margin input{padding:4px 8px;font-size:12px;text-align:right}.allocation-progress-bar-block{display:flex;flex-direction:column;gap:6px}.progress-bar-track{height:6px;background-color:var(--office-border);border-radius:9999px;overflow:hidden}.progress-bar-fill{height:100%;border-radius:9999px;transition:width .3s ease}.progress-bar-fill.success{background-color:var(--office-success)}.progress-bar-fill.pending{background-color:var(--office-warning)}.progress-percentage-label{font-size:12px;color:var(--office-muted)}.progress-percentage-label.success{color:var(--office-success)}.progress-percentage-label.error{color:var(--office-danger)}.import-status-flow-box{min-height:200px;display:flex;align-items:center;justify-content:center}.importing-spinner-layout{display:flex;flex-direction:column;align-items:center;gap:12px}.loading-ring-spinner{width:36px;height:36px;border:3px solid var(--office-border);border-top-color:var(--office-primary);border-radius:50%;animation:spinner .8s linear infinite}@keyframes spinner{to{transform:rotate(360deg)}}.importing-status-label{font-size:13.5px;color:var(--office-muted)}.importing-substatus-label{font-size:11.5px;color:var(--office-muted);opacity:.7;text-align:center;max-width:300px}.loading-ring-spinner.large{width:48px;height:48px;border-width:4px}.importing-success-complete-layout{display:flex;flex-direction:column;align-items:center;width:100%}.success-badge-mark{width:48px;height:48px;border-radius:50%;background-color:#10b9811a;color:var(--office-success);display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:700;margin-bottom:12px}.importing-success-complete-layout h3{font-size:16px;color:var(--office-text);margin:0 0 4px}.importing-success-complete-layout p{font-size:12.5px;color:var(--office-muted);margin:0;text-align:center}.import-credentials-export-wrapper{width:100%;border:1px solid var(--office-border);border-radius:var(--office-radius-md);margin-top:20px;background-color:var(--office-surface);overflow:hidden}.export-action-bar-row{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;background-color:var(--office-bg);border-bottom:1px solid var(--office-border)}.export-action-bar-row h4{font-size:13px;font-weight:600;color:var(--office-text);margin:0}.action-button-group{display:flex;gap:8px}.credentials-scrollable-table{max-height:220px;overflow-y:auto}.credentials-display-table{width:100%;border-collapse:collapse;font-size:12.5px;text-align:left}.credentials-display-table th{padding:8px 12px;background-color:var(--office-bg);border-bottom:1px solid var(--office-border);font-weight:600;color:var(--office-text)}.credentials-display-table td{padding:8px 12px;border-bottom:1px solid var(--office-border);color:var(--office-text)}.credentials-display-table tr:last-child td{border-bottom:none}.margin-top-md{margin-top:20px}.animate-fadeIn{animation:fadeIn .25s ease-out}@media (max-width: 768px){.wizard-form-grid{grid-template-columns:1fr}.form-input-control.full-span{grid-column:span 1}.download-template-card-box{flex-direction:column;align-items:flex-start;gap:12px}.download-template-card-box button{width:100%;justify-content:center}.steps-indicator-nodes .node-label{display:none}}.office-dashboard-home{display:flex;flex-direction:column;gap:20px}.dashboard-section-header{margin-bottom:8px}.dashboard-section-header h3{font-size:16px;font-weight:650;color:var(--office-text);margin:0}.dashboard-section-header p{font-size:12px;color:var(--office-muted);margin:3px 0 0}.margin-top-lg{margin-top:30px}.notice-card-blue{border-left:4px solid #3b82f6!important}.notice-card-orange{border-left:4px solid #f97316!important}.notice-card-green{border-left:4px solid #10b981!important}.notice-card-purple{border-left:4px solid #8b5cf6!important}.notices-sent{background-color:#3b82f614;color:#3b82f6}.pending-reads{background-color:#f9731614;color:#f97316}.today-notices{background-color:#10b98114;color:#10b981}.active-dept{background-color:#8b5cf614;color:#8b5cf6}.text-scrollable{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.dashboard-grid-two-cols{display:grid;grid-template-columns:1fr 1fr;gap:20px}@media (max-width: 900px){.dashboard-grid-two-cols{grid-template-columns:1fr}}.dashboard-visuals-card,.dashboard-feed-card{background-color:var(--office-surface);border:1px solid var(--office-border);border-radius:var(--office-radius-lg);padding:20px;box-shadow:var(--office-shadow-sm);display:flex;flex-direction:column}.dashboard-visuals-card h4,.dashboard-feed-card h4{font-size:14px;font-weight:650;color:var(--office-text);margin:0}.card-sub-description{font-size:11.5px;color:var(--office-muted);margin:3px 0 16px}.visuals-loader{display:flex;align-items:center;justify-content:center;height:180px}.visuals-empty{display:flex;align-items:center;justify-content:center;height:180px;font-size:12px;color:var(--office-muted)}.dept-distribution-list{display:flex;flex-direction:column;gap:14px}.dept-dist-item{display:flex;flex-direction:column;gap:5px}.dept-dist-info{display:flex;justify-content:space-between;font-size:12px}.dept-dist-name{color:var(--office-text);font-weight:550;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:70%}.dept-dist-count{color:var(--office-muted)}.dept-dist-bar-track{height:6px;background-color:var(--office-bg);border-radius:999px;overflow:hidden}.dept-dist-bar-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,var(--office-primary) 0%,var(--office-secondary) 100%)}.feed-header-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.feed-view-all-btn{background:none;border:none;font-size:11.5px;font-weight:600;color:var(--office-primary);cursor:pointer;padding:0;text-decoration:underline}.feed-view-all-btn:hover{color:var(--office-primary-dark)}.recent-notices-feed{max-height:220px;overflow-y:auto;display:flex;flex-direction:column;gap:10px;padding-right:5px}.feed-item{padding:10px 12px;background-color:var(--office-bg);border-radius:var(--office-radius-sm);border:1px solid var(--office-border);display:flex;flex-direction:column;gap:5px;transition:var(--office-transition)}.feed-item:hover{border-color:#2563eb33;box-shadow:var(--office-shadow-sm)}.feed-item-top{display:flex;justify-content:space-between;align-items:center}.feed-badge{font-size:9px;font-weight:700;padding:2px 6px;border-radius:9999px;text-transform:uppercase}.feed-badge.general{background-color:#3b82f61a;color:#3b82f6}.feed-badge.urgent{background-color:#ef44441a;color:#ef4444}.feed-badge.exam{background-color:#f59e0b1a;color:#f59e0b}.feed-badge.fee{background-color:#10b9811a;color:#10b981}.feed-badge.event{background-color:#8b5cf61a;color:#8b5cf6}.feed-badge.holiday{background-color:#6b72801a;color:#6b7280}.feed-badge.scholarship{background-color:#ec48991a;color:#ec4899}.feed-badge.circular{background-color:#06b6d41a;color:#06b6d4}.feed-date{font-size:10px;color:var(--office-muted)}.feed-title{font-size:12px;font-weight:600;color:var(--office-text);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.feed-item-meta{display:flex;justify-content:space-between;font-size:10px;color:var(--office-muted)}.feed-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;height:150px;color:var(--office-muted)}.feed-empty-state span{font-size:24px;margin-bottom:8px}.feed-empty-state p{font-size:11.5px;margin:0}:root{--office-font-family: "Inter", "Outfit", sans-serif;--office-primary: #2563EB;--office-secondary: #4F46E5;--office-success: #10B981;--office-warning: #F59E0B;--office-danger: #EF4444;--office-bg: #F8FAFC;--office-surface: #FFFFFF;--office-text: #0F172A;--office-muted: #64748B;--office-border: #E2E8F0;--office-primary-dark: #1D4ED8;--office-primary-light: rgba(37, 99, 235, .06);--office-secondary-dark: #3730A3;--office-secondary-light: rgba(79, 70, 229, .06);--office-gradient-primary: linear-gradient(135deg, #2563EB 0%, #4F46E5 100%);--office-gradient-hover: linear-gradient(135deg, #1D4ED8 0%, #3730A3 100%);--office-gradient-success: linear-gradient(135deg, #10B981 0%, #059669 100%);--office-gradient-danger: linear-gradient(135deg, #EF4444 0%, #DC2626 100%);--office-gradient-glow: radial-gradient(circle at 50% 50%, rgba(37, 99, 235, .08) 0%, transparent 85%);--office-radius-sm: 6px;--office-radius-md: 10px;--office-radius-lg: 14px;--office-shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--office-shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .05), 0 2px 4px -1px rgba(0, 0, 0, .03);--office-shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .06), 0 4px 6px -2px rgba(0, 0, 0, .04);--office-shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .08), 0 10px 10px -5px rgba(0, 0, 0, .04);--sidebar-width: 280px;--header-height: 0px;--office-transition: all .2s cubic-bezier(.4, 0, .2, 1);--office-transition-fast: all .1s ease-out}body{font-family:var(--office-font-family);background-color:var(--office-bg);color:var(--office-text);margin:0;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@keyframes fadeInUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-16px)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes modalScaleIn{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.office-scrollable,.scrollable-content,.sidebar-nav,.batch-allocation-grid,.editor-content{scrollbar-width:thin;scrollbar-color:var(--office-border) transparent}.office-scrollable::-webkit-scrollbar,.scrollable-content::-webkit-scrollbar,.sidebar-nav::-webkit-scrollbar,.batch-allocation-grid::-webkit-scrollbar,.editor-content::-webkit-scrollbar{width:6px;height:6px}.office-scrollable::-webkit-scrollbar-track,.scrollable-content::-webkit-scrollbar-track,.sidebar-nav::-webkit-scrollbar-track,.batch-allocation-grid::-webkit-scrollbar-track,.editor-content::-webkit-scrollbar-track{background:transparent}.office-scrollable::-webkit-scrollbar-thumb,.scrollable-content::-webkit-scrollbar-thumb,.sidebar-nav::-webkit-scrollbar-thumb,.batch-allocation-grid::-webkit-scrollbar-thumb,.editor-content::-webkit-scrollbar-thumb{background-color:var(--office-border);border-radius:9999px}.office-scrollable::-webkit-scrollbar-thumb:hover,.scrollable-content::-webkit-scrollbar-thumb:hover,.sidebar-nav::-webkit-scrollbar-thumb:hover,.batch-allocation-grid::-webkit-scrollbar-thumb:hover,.editor-content::-webkit-scrollbar-thumb:hover{background-color:var(--office-muted)}.office-sidebar-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0f172a4d;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;animation:fadeIn .2s ease-out}.office-sidebar{position:fixed;left:0;top:0;bottom:0;width:var(--sidebar-width);background-color:var(--office-surface);border-right:1px solid var(--office-border);display:flex;flex-direction:column;z-index:1010;transition:transform var(--office-transition),width var(--office-transition);height:100vh}.office-sidebar.collapsed{transform:translate(0)}.sidebar-brand-wrapper{padding:16px 20px;border-bottom:1px solid var(--office-border);height:var(--header-height);display:flex;align-items:center}.brand-inner{display:flex;align-items:center;gap:10px;width:100%}.brand-logo-img{max-width:90px;max-height:38px;width:auto;height:auto;object-fit:contain;border-radius:var(--office-radius-sm);border:1px solid var(--office-border)}.brand-logo-fallback{width:32px;height:32px;background:var(--office-gradient-primary);color:#fff;border-radius:var(--office-radius-sm);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:13px;text-transform:uppercase}.brand-details{display:flex;flex-direction:column;min-width:0}.brand-name{font-size:13.5px;font-weight:600;color:var(--office-text);line-height:1.2}.brand-subtext{font-size:11px;color:var(--office-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-user-card{display:flex;align-items:center;gap:10px;padding:12px 16px;margin:12px 14px 8px;background-color:var(--office-bg);border:1px solid var(--office-border);border-radius:var(--office-radius-md);transition:var(--office-transition)}.sidebar-user-card:hover{border-color:#2563eb33;background-color:#2563eb05}.user-avatar-badge{width:32px;height:32px;background-color:var(--office-primary-light);color:var(--office-primary);border:1px solid rgba(37,99,235,.15);font-size:13.5px;font-weight:600;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.user-text-info{display:flex;flex-direction:column;min-width:0}.user-display-name{font-size:12.5px;font-weight:550;color:var(--office-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-role-label{font-size:10.5px;color:var(--office-muted)}.sidebar-nav-menu{flex:1;padding:12px 14px;display:flex;flex-direction:column;gap:16px;overflow-y:auto}.menu-group-label{font-size:10.5px;font-weight:600;color:var(--office-muted);text-transform:uppercase;letter-spacing:.05em;padding-left:6px}.menu-items-list{display:flex;flex-direction:column;gap:4px}.menu-item-btn{display:flex;align-items:center;gap:10px;padding:8px 12px;background:transparent;border:none;color:var(--office-muted);border-radius:var(--office-radius-sm);cursor:pointer;font-size:13px;font-weight:500;text-align:left;transition:var(--office-transition);position:relative;width:100%}.menu-item-btn:hover{color:var(--office-text);background-color:var(--office-bg)}.menu-item-btn.active{color:var(--office-primary);background-color:var(--office-primary-light);font-weight:600}.menu-item-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0}.nav-svg-icon{width:18px;height:18px;transition:var(--office-transition-fast)}.menu-item-btn:hover .nav-svg-icon{transform:scale(1.05)}.menu-item-btn.active .nav-svg-icon{color:var(--office-primary)}.menu-item-text{flex:1}.active-dot{width:5px;height:5px;background-color:var(--office-primary);border-radius:50%}.sidebar-footer-actions{padding:12px 14px;border-top:1px solid var(--office-border)}.logout-action-btn{width:100%;display:flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid var(--office-border);background-color:transparent;color:var(--office-danger);border-radius:var(--office-radius-sm);font-size:13px;font-weight:550;cursor:pointer;transition:var(--office-transition)}.logout-action-btn:hover{background-color:#ef44440d;border-color:#ef444433}.logout-svg-icon{width:16px;height:16px}.office-mobile-sidebar-toggle{display:none}@media (max-width: 768px){.office-sidebar{transform:translate(-100%)}.office-sidebar.visible{transform:translate(0);box-shadow:var(--office-shadow-xl)}.office-sidebar.collapsed{transform:translate(-100%)}.office-mobile-sidebar-toggle{display:flex;align-items:center;justify-content:center;position:fixed;top:12px;left:12px;width:36px;height:36px;border-radius:var(--office-radius-sm);background-color:var(--office-surface);border:1px solid var(--office-border);color:var(--office-text);box-shadow:var(--office-shadow-sm);z-index:999;cursor:pointer;transition:var(--office-transition-fast)}.office-mobile-sidebar-toggle:hover{background-color:var(--office-bg)}.mobile-toggle-svg{width:18px;height:18px}}.attendance-summary-page{padding:1.1rem;min-height:calc(100vh - 64px);background:radial-gradient(circle at 8% 8%,rgba(31,95,191,.12),transparent 38%),radial-gradient(circle at 92% 2%,rgba(19,73,150,.08),transparent 35%),linear-gradient(180deg,#f2f7ff,#eaf2ff)}.attendance-summary-header{border:1px solid #d7e5f8;border-radius:18px;background:linear-gradient(145deg,#fff,#edf5ff);box-shadow:0 12px 26px #122b5214;padding:1.1rem 1.2rem;margin-bottom:1rem}.attendance-summary-header h2{margin:0;color:#143257;font-size:1.9rem;font-weight:800}.attendance-summary-header p{margin:.35rem 0 0;color:#5d7090;font-weight:600}.attendance-summary-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:.9rem}.attendance-summary-card{border:1px solid #d7e5f8;border-radius:14px;background:#fff;box-shadow:0 10px 24px #122b5214;padding:.95rem;text-align:left;display:flex;flex-direction:column;gap:.35rem;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.attendance-summary-card:hover{transform:translateY(-3px);box-shadow:0 14px 26px #122b521f}.attendance-summary-card__icon{color:#1f5fbf;font-size:1.35rem}.attendance-summary-card__body h3{margin:.2rem 0;color:#143257;font-size:1.08rem;font-weight:800}.attendance-summary-card__body p{margin:0;color:#5d7090;font-size:.92rem;font-weight:600}.attendance-summary-card__cta{margin-top:.55rem;color:#1f5fbf;font-weight:800;font-size:.9rem}.attendance-summary-loading,.attendance-summary-empty{grid-column:1 / -1;border:1px solid #d7e5f8;border-radius:12px;background:#fff;color:#5d7090;font-weight:700;padding:1rem;text-align:center}.attendance-summary-spinner{width:32px;height:32px;border-radius:50%;border:3px solid #d7e5f8;border-top-color:#1f5fbf;margin:0 auto 10px;animation:attendance-summary-spin .9s linear infinite}@keyframes attendance-summary-spin{to{transform:rotate(360deg)}}.summary-scroll-container{min-height:100vh;background-color:#f1f5f9;padding:2.5rem 1.5rem;display:flex;justify-content:center;align-items:flex-start;overflow-y:auto}.summary-container.attendance-summary-container{width:100%;max-width:1450px;background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 10px 25px -5px #0000000d,0 8px 10px -6px #0000000d;padding:2.5rem;margin:0 auto;box-sizing:border-box}.print-institution-header{display:flex;flex-direction:column;align-items:center;text-align:center;gap:.75rem;border-bottom:2px solid #1a4f9c;padding-bottom:1.5rem;margin-bottom:2rem}.print-institution-logo{height:80px;width:80px;object-fit:contain}.print-institution-info h2{color:#1a4f9c;font-size:1.8rem;font-weight:800;margin:0;font-family:Outfit,Inter,sans-serif}.print-report-subtitle{color:#475569;font-size:.95rem;margin:.25rem 0 0;text-transform:uppercase;letter-spacing:.75px;font-weight:600}.summary-header{text-align:center;margin-bottom:2.5rem}.summary-header h1{color:#0f172a;font-size:2rem;font-weight:800;margin:0 0 1.5rem;font-family:Outfit,Inter,sans-serif}.Ciaan-info{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem;width:100%;margin-top:1.5rem}.Ciaan-info p{display:flex;flex-direction:column;gap:.35rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:1.1rem;margin:0;min-height:85px;justify-content:center;transition:all .2s ease;box-sizing:border-box}.Ciaan-info p:hover{border-color:#bfdbfe;background:#f0f7ff}.Ciaan-info p strong{color:#64748b;font-size:.8rem;text-transform:uppercase;letter-spacing:.5px;font-weight:700}.Ciaan-info p span{color:#0f172a;font-size:1rem;font-weight:600}.summary-section-card{background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:1.75rem;margin-top:2rem;box-shadow:0 4px 6px -1px #00000005,0 2px 4px -1px #00000005}.summary-section-card h3{font-size:1.4rem;color:#1e293b;font-weight:700;text-align:center;margin-top:0;margin-bottom:1.5rem;font-family:Outfit,Inter,sans-serif;border-bottom:2px solid #f1f5f9;padding-bottom:.75rem}.summary-section-card table{width:100%;border-collapse:separate;border-spacing:0;border:1px solid #e2e8f0;border-radius:10px;overflow:hidden;margin-bottom:.5rem}.summary-section-card th{background:#f8fafc;color:#475569;font-weight:700;font-size:.9rem;padding:.85rem 1rem;border-bottom:1px solid #e2e8f0;border-right:1px solid #e2e8f0;text-align:center}.summary-section-card th:last-child{border-right:none}.summary-section-card td{padding:.85rem 1rem;font-size:.95rem;color:#0f172a;border-bottom:1px solid #e2e8f0;border-right:1px solid #e2e8f0;text-align:center;font-weight:500}.summary-section-card td:last-child{border-right:none}.summary-section-card tr:last-child td{border-bottom:none}.summary-section-card tr.data-label-row td{background:#fdfdfd;font-size:.85rem;color:#64748b;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.summary-section-card tr.data-value-row td{font-weight:700;color:#0f172a;font-size:1.05rem}.summary-section-card td ol{margin:0;padding-left:1.5rem}.summary-section-card td li{margin-bottom:.35rem;font-size:.9rem;color:#334155;font-weight:500}.footer-summary{display:flex;justify-content:space-between;align-items:center;margin-top:2.5rem;border-top:1px solid #e2e8f0;padding-top:1.5rem}.footer-summary p{color:#64748b;font-size:.9rem;margin:0}.footer-summary p a{color:#1a4f9c;text-decoration:none;font-weight:600}.footer-summary p a:hover{text-decoration:underline}.print-button{background:linear-gradient(135deg,#1a4f9c,#134996);color:#fff;border:none;border-radius:8px;padding:.65rem 1.75rem;font-size:.95rem;font-weight:700;cursor:pointer;box-shadow:0 4px 6px -1px #1a4f9c33;transition:all .2s ease}.print-button:hover{transform:translateY(-1px);box-shadow:0 10px 15px -3px #1a4f9c4d;background:linear-gradient(135deg,#134996,#0e3770)}@media (max-width: 1024px){.summary-scroll-container{padding:1.5rem 1rem}.summary-container.attendance-summary-container{padding:1.5rem}}@media (max-width: 768px){.Ciaan-info{grid-template-columns:1fr}.footer-summary{flex-direction:column;gap:1rem;text-align:center}}.print-footer{display:none}.ct-Ciaan-page{padding:20px;min-height:calc(100vh - 90px);background:linear-gradient(180deg,#f1f6fc,#e8eef7)}.ct-Ciaan-hero{border:1px solid #d7e3f3;border-radius:14px;background:linear-gradient(135deg,#f8fbff,#eef6ff 58%,#e9fbf7);padding:18px 20px;margin-bottom:16px}.ct-Ciaan-hero h2{margin:0;color:#16375d;font-size:1.5rem;font-weight:800}.ct-Ciaan-hero p{margin:6px 0 0;color:#58708f}.ct-Ciaan-grid-wrap{border:1px solid #d7e3f3;border-radius:14px;background:#fff;padding:14px;box-shadow:0 12px 24px #0c234814}.ct-Ciaan-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}.ct-Ciaan-card{border:1px solid #dbe7f6;border-radius:12px;background:#fbfdff;padding:12px;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.ct-Ciaan-card:hover,.ct-Ciaan-card:focus-visible{outline:none;border-color:#8db7f0;box-shadow:0 10px 18px #2156a526;transform:translateY(-2px)}.ct-Ciaan-card-id{display:inline-block;font-size:.72rem;font-weight:700;color:#1f5fc1;border:1px solid #cde0f9;border-radius:999px;background:#eef5ff;padding:4px 9px}.ct-Ciaan-card h3{margin:10px 0 2px;font-size:1rem;color:#18395f;font-weight:700}.ct-Ciaan-subject-code{margin:0;font-size:.82rem;color:#5a7191}.ct-Ciaan-meta{margin:8px 0;font-size:.86rem;color:#334f73}.ct-Ciaan-open{font-size:.78rem;font-weight:700;color:#126f6a}.ct-Ciaan-state{margin:0;text-align:center;color:#506986;padding:16px}.ct-Ciaan-error{color:#b4233f}.ct-Ciaan-card.archived-card{background:#f8fafc;border-color:#cbd5e1b3;box-shadow:0 4px 12px #00000005;opacity:.85}.ct-Ciaan-card.archived-card:hover{border-color:#cbd5e1;box-shadow:0 10px 18px #64748b26;opacity:1}.ct-Ciaan-card.archived-card .ct-Ciaan-card-id{color:#64748b;background-color:#f1f5f9;border-color:#e2e8f0}.ct-Ciaan-card.archived-card .ct-Ciaan-open{color:#64748b}.workspace-section-group{margin-bottom:2.5rem}.workspace-section-title{font-weight:700;display:flex;align-items:center}.no-workspaces-alert{background:#fff9;border:1px dashed rgba(0,0,0,.12);border-radius:8px;padding:1.5rem;text-align:center;color:#00000080;font-size:.95rem}.assess-batch-select-page.container,.assess-batch-select-page .container{max-width:1200px;margin:20px auto;padding:20px}.ciaan-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:15px;margin-bottom:25px}.ciaan-info-card{background:#fff;border-radius:12px;padding:15px 20px;box-shadow:0 4px 15px #0000000d;border:1px solid #e2e8f0;display:flex;flex-direction:column}.info-label{font-size:.85rem;color:#64748b;font-weight:600;text-transform:uppercase;margin-bottom:6px;letter-spacing:.5px}.info-value{font-size:1.1rem;color:#0f172a;font-weight:700}.experiments-panel{background:#fff;border-radius:16px;padding:25px;box-shadow:0 4px 20px #0000000d;border:1px solid #e2e8f0;margin-bottom:25px}.experiments-title{font-size:1.3rem;font-weight:700;color:#0f172a;margin-bottom:20px;border-bottom:2px solid #f1f5f9;padding-bottom:12px}.experiments-list{display:flex;flex-direction:column;gap:15px}.experiment-item-card{padding:16px 20px;background-color:#f8fafc;border-radius:12px;border-left:4px solid #2563eb;transition:transform .2s,box-shadow .2s}.experiment-item-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000000d}.experiment-number{font-weight:700;color:#2563eb;font-size:.95rem;margin-bottom:4px}.experiment-name{color:#334155;font-size:1.05rem;line-height:1.5}.assess-batch-select-page select.form-control{font-size:16px;padding:12px 16px;border-radius:10px;border:1px solid #cbd5e1;background-color:#fff;box-shadow:0 2px 5px #00000005;transition:border-color .2s,box-shadow .2s}.assess-batch-select-page select.form-control:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb26;outline:none}.assess-batch-select-page .btn-submit-batch{font-size:16px;padding:14px;border-radius:50px;font-weight:700;background:linear-gradient(135deg,#10b981,#059669);border:none;color:#fff;box-shadow:0 4px 12px #10b98133;transition:all .25s ease;cursor:pointer}.assess-batch-select-page .btn-submit-batch:hover{transform:translateY(-2px);box-shadow:0 6px 15px #10b98166}.assess-batch-select-page .btn-submit-batch:active{transform:translateY(0)}.batch-select-header-card{background:linear-gradient(135deg,#0f172a,#1e293b);color:#fff;padding:2rem;border-radius:20px;box-shadow:0 10px 30px #0f172a26;margin-bottom:25px;text-align:center}.batch-select-header-card h2{font-size:1.8rem;font-weight:800;margin-bottom:0}@media (max-width: 768px){.assess-batch-select-page.container,.assess-batch-select-page .container{padding:15px}.ciaan-info-grid{grid-template-columns:1fr 1fr}}@media (max-width: 576px){.ciaan-info-grid{grid-template-columns:1fr}.batch-select-header-card h2{font-size:1.5rem}}.experiment-item-card{display:flex;justify-content:space-between;align-items:center;gap:15px}.experiment-details{display:flex;flex-direction:column}.assessment-status-badge{font-size:.85rem;font-weight:600;padding:6px 14px;border-radius:20px;display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.assessment-status-badge.status-assessed{background-color:#ecfdf5;color:#047857;border:1px solid #a7f3d0}.assessment-status-badge.status-not-assessed{background-color:#fef2f2;color:#b91c1c;border:1px solid #fecaca}@media (max-width: 576px){.experiment-item-card{flex-direction:column;align-items:flex-start;gap:10px}.assessment-status-badge{align-self:flex-start}}.assess-pa-dashboard-page{width:100%!important;max-width:100%!important;margin:20px auto;padding:0 30px!important;font-family:Inter,-apple-system,sans-serif;box-sizing:border-box}.pa-header-card{background:linear-gradient(135deg,#0f172a,#1e293b);color:#fff;padding:24px 32px;border-radius:16px;box-shadow:0 10px 25px #0f172a26;margin-bottom:25px;width:100%;box-sizing:border-box}.header-content{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:15px}.pa-header-card h2{font-size:1.6rem;font-weight:800;margin:0;letter-spacing:-.5px}.btn-back{background:#ffffff26!important;border:1px solid rgba(255,255,255,.25)!important;color:#fff!important;padding:8px 18px!important;border-radius:8px!important;font-weight:600!important;font-size:.9rem!important;cursor:pointer!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;white-space:nowrap!important;transition:all .2s ease!important;text-decoration:none!important;width:auto!important;height:auto!important;line-height:1!important}.btn-back:hover{background:#ffffff40!important;transform:translate(-3px)}.btn-back i{font-size:1rem;display:inline-block;line-height:1}.ciaan-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:15px;width:100%}.ciaan-info-card{background:#fff;border-radius:12px;padding:16px 20px;box-shadow:0 4px 15px #0000000a;border:1px solid #e2e8f0;display:flex;flex-direction:column}.info-label{font-size:.75rem;color:#64748b;font-weight:700;text-transform:uppercase;margin-bottom:6px;letter-spacing:.5px}.info-value{font-size:1.05rem;color:#0f172a;font-weight:700}.experiments-table-card{background:#fff;border-radius:16px;border:1px solid #e2e8f0;overflow:hidden;margin-bottom:30px;width:100%;box-shadow:0 4px 20px #00000008}.table-card-header{padding:20px 24px;border-bottom:1px solid #f1f5f9;background-color:#f8fafc}.table-card-title{margin:0;font-size:1.15rem;font-weight:700;color:#0f172a}.modern-table{width:100%;border-collapse:collapse;table-layout:auto}.modern-table th{background-color:#f8fafc;color:#475569;font-weight:700;font-size:.85rem;text-transform:uppercase;letter-spacing:.5px;padding:14px 20px;border-bottom:2px solid #f1f5f9}.modern-table td{padding:16px 20px;border-bottom:1px solid #f1f5f9;vertical-align:middle;font-size:.95rem;color:#334155}.modern-table tbody tr:hover{background-color:#f8fafc}.exp-name-cell{font-weight:500;color:#1e293b;word-break:break-word;white-space:normal!important;line-height:1.5}.status-badge{font-size:.85rem;font-weight:600;padding:6px 14px;border-radius:20px;display:inline-flex;align-items:center;justify-content:center;gap:6px;white-space:nowrap}.status-badge.status-assessed{background-color:#ecfdf5;color:#047857;border:1px solid #a7f3d0}.status-badge.status-not-assessed{background-color:#fef2f2;color:#b91c1c;border:1px solid #fecaca}.btn-action{font-size:.85rem;font-weight:700;padding:8px 18px;border-radius:8px;cursor:pointer;transition:all .2s ease;border:none;width:100%;max-width:120px;text-align:center;display:inline-block}.btn-action.btn-start{background-color:#10b981;color:#fff;box-shadow:0 4px 10px #10b98133}.btn-action.btn-start:hover{background-color:#059669;transform:translateY(-1px);box-shadow:0 6px 12px #10b9814d}.btn-action.btn-edit{background-color:#3b82f6;color:#fff;box-shadow:0 4px 10px #3b82f633}.btn-action.btn-edit:hover{background-color:#2563eb;transform:translateY(-1px);box-shadow:0 6px 12px #3b82f64d}@media (max-width: 768px){.assess-pa-dashboard-page{padding:0 15px!important}.pa-header-card{padding:20px}.ciaan-info-grid{grid-template-columns:1fr 1fr}.modern-table th,.modern-table td{padding:12px 14px}}@media (max-width: 576px){.ciaan-info-grid{grid-template-columns:1fr}.pa-header-card h2{font-size:1.3rem}}.assess-pa-studentlist-page{background-color:#f5f6fa;min-height:100vh}.assess-pa-studentlist-page.container,.assess-pa-studentlist-page .container{max-width:1200px;margin:.5rem auto!important;padding:15px;background-color:#fff;border-radius:8px;box-shadow:0 2px 10px #00000014}@media (min-width: 1200px){.assess-pa-studentlist-page.container,.assess-pa-studentlist-page .container{max-width:1400px;padding:30px}}.assess-pa-studentlist-page .page-header{background-color:#28a745;color:#fff;padding:15px 20px;border-radius:8px;text-align:center;margin-bottom:25px;font-size:1.4rem;font-weight:600;box-shadow:0 2px 4px #0000001a}.assess-pa-studentlist-page h4{font-weight:700;color:#333}.assess-pa-studentlist-page p{font-size:1.05rem;margin-top:10px;margin-bottom:15px}@media (min-width: 992px){.assess-pa-studentlist-page h4{font-size:1.8rem;margin-bottom:20px}.assess-pa-studentlist-page p{font-size:1.1rem;margin-bottom:20px}.assess-pa-studentlist-page .mt-4{margin-top:2rem!important}}.assess-pa-studentlist-page .alert-info{background-color:#d9edf7;border:1px solid #bce8f1;padding:15px 20px;border-radius:6px;color:#31708f;margin-bottom:25px;font-size:15px}.assess-pa-studentlist-page .alert-info strong{color:#2c5aa0}.assess-pa-studentlist-page .alert-secondary{background-color:#f8f9fa;border:1px solid #dee2e6;color:#495057;padding:12px 20px;border-radius:6px;font-size:15px}@media (min-width: 992px){.assess-pa-studentlist-page .alert-info{padding:20px 25px;font-size:1rem;margin-bottom:25px}.assess-pa-studentlist-page .alert-info strong{display:inline-block;min-width:120px}}.assess-pa-studentlist-page .table-container{background-color:#fff;border-radius:8px;box-shadow:0 2px 8px #00000014;overflow:hidden;border:1px solid #e9ecef}.assess-pa-studentlist-page .table{margin-bottom:0;font-size:.95rem}.assess-pa-studentlist-page .table th,.assess-pa-studentlist-page .table td{text-align:center;vertical-align:middle;padding:12px 15px;border-color:#e9ecef}.assess-pa-studentlist-page .table th{background-color:#f8f9fa;font-weight:600;color:#495057;border-bottom:2px solid #dee2e6;position:sticky;top:0;z-index:10}@media (min-width: 992px){.assess-pa-studentlist-page .table{font-size:1rem}.assess-pa-studentlist-page .table th,.assess-pa-studentlist-page .table td{padding:15px 20px}.assess-pa-studentlist-page .table th:first-child,.assess-pa-studentlist-page .table td:first-child{width:20%}.assess-pa-studentlist-page .table th:nth-child(2),.assess-pa-studentlist-page .table td:nth-child(2){width:55%;text-align:left;padding-left:25px}.assess-pa-studentlist-page .table th:last-child,.assess-pa-studentlist-page .table td:last-child{width:25%}.assess-pa-studentlist-page .table input.form-control{max-width:120px;margin:0 auto;font-size:1rem;padding:8px 12px;text-align:center}}.assess-pa-studentlist-page .search-controls{background-color:#f8f9fa;padding:15px 20px;border-radius:8px;margin-bottom:20px;border:1px solid #e9ecef}.assess-pa-studentlist-page .d-flex input.form-control{min-width:250px;font-size:14px;padding:8px 12px;border-radius:6px}.assess-pa-studentlist-page .btn{font-size:.9rem;padding:8px 15px;border-radius:6px}@media (min-width: 992px){.assess-pa-studentlist-page .page-header{font-size:1.6rem;padding:20px 25px}.assess-pa-studentlist-page .search-controls{padding:20px 25px}.assess-pa-studentlist-page .d-flex input.form-control{min-width:350px;font-size:1rem;padding:10px 15px}.assess-pa-studentlist-page .btn{font-size:.95rem;padding:10px 18px}.assess-pa-studentlist-page .d-flex.justify-content-between{align-items:center}}.assess-pa-studentlist-page .submit-section{background-color:#f8f9fa;padding:20px;border-radius:8px;margin-top:25px;border:1px solid #e9ecef;text-align:center}.assess-pa-studentlist-page button.btn-success{font-size:1rem;padding:12px 30px;border-radius:6px;font-weight:500;min-width:150px}@media (min-width: 992px){.assess-pa-studentlist-page .submit-section{padding:25px 30px;margin-top:30px}.assess-pa-studentlist-page button.btn-success{font-size:1.1rem;padding:15px 40px;border-radius:8px;min-width:180px}.assess-pa-studentlist-page .alert-warning{font-size:1rem;padding:15px 20px;margin-bottom:20px}}@media (min-width: 992px){.assess-pa-studentlist-page .table-hover tbody tr:hover{background-color:#f8f9fa;transition:background-color .2s ease}}@media (max-width: 768px){.assess-pa-studentlist-page .d-flex{flex-direction:column;align-items:stretch;gap:8px}.assess-pa-studentlist-page .d-flex input.form-control,.assess-pa-studentlist-page .d-flex .btn{width:100%!important}}.assessment-page-container{flex:1;display:flex;justify-content:center;align-items:flex-start;padding:20px;box-sizing:border-box;width:100%}.assessment-container{width:100%;max-width:1000px;min-height:10vh;margin:20px auto;background:#fff;border-radius:12px;box-shadow:0 4px 12px #0000001a;padding:24px 30px;display:flex;flex-direction:column;align-items:flex-start}.assessment-container h2{width:100%;font-size:2rem;color:#28a745;font-weight:700;margin:0 0 20px;padding-bottom:15px;border-bottom:2px solid #e0e0e0;letter-spacing:-.02em}.assessment-container form{width:100%;display:flex;flex-direction:column}.assessment-container label{background-color:#28a745;color:#fff;padding:10px 14px;font-weight:600;font-size:15px;text-align:left;margin:0;border-radius:6px 6px 0 0}.assessment-container select{width:100%;padding:12px;border:1px solid #ddd;border-radius:0 0 6px 6px;font-size:14px;box-sizing:border-box;transition:border-color .2s ease-in-out,box-shadow .2s ease-in-out;background-color:#fff;margin-bottom:20px;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url(data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%236c757d%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E);background-repeat:no-repeat;background-position:right 1rem center;background-size:.65em auto}.assessment-container select:focus{outline:none;border-color:#28a745;box-shadow:0 0 0 3px #28a7451a}.assessment-container button[type=submit]{background-color:#28a745;color:#fff;padding:10px 28px;font-size:15px;font-weight:600;border:none;border-radius:6px;cursor:pointer;transition:all .2s ease-in-out;box-shadow:0 2px 5px #28a74533;align-self:center;margin-top:20px}.assessment-container button[type=submit]:hover{background-color:#218838;transform:translateY(-1px);box-shadow:0 4px 8px #28a7454d}.assessment-container button[type=submit]:active{transform:translateY(0);box-shadow:0 2px 5px #28a74533}@media (max-width: 768px){.assessment-page-container{padding:15px}.assessment-container{padding:20px 16px}.assessment-container h2{font-size:1.6rem}}@media (max-width: 480px){.assessment-container{padding:16px 12px}.assessment-container h2{font-size:1.6rem}.assessment-container select,.assessment-container button[type=submit]{font-size:14px}}.assessment-dashboard{padding:20px}.dashboard-header,.batch-selection-card{margin-bottom:20px}.statistics-cards{margin-bottom:30px}.stat-card{text-align:center;padding:20px;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:20px}.stat-card h5{font-size:2rem;font-weight:700;margin-bottom:10px}.stat-card.primary{background:linear-gradient(135deg,#007bff,#0056b3);color:#fff}.stat-card.success{background:linear-gradient(135deg,#28a745,#1e7e34);color:#fff}.stat-card.warning{background:linear-gradient(135deg,#ffc107,#e0a800);color:#fff}.stat-card.info{background:linear-gradient(135deg,#17a2b8,#138496);color:#fff}.experiment-stats-table{margin-top:20px}.experiment-stats-table th{background-color:#f8f9fa;font-weight:600}.marks-badge{font-size:.9rem;padding:5px 10px}.action-buttons{display:flex;gap:5px}.no-data-card{text-align:center;padding:40px;background-color:#f8f9fa;border-radius:8px}.loading-spinner{text-align:center;padding:40px}.error-alert{margin-bottom:20px}.dashboard-actions{display:flex;gap:10px;flex-wrap:wrap}@media (max-width: 768px){.dashboard-actions{flex-direction:column}.dashboard-actions .btn{width:100%;margin-bottom:10px}.stat-card h5{font-size:1.5rem}}.card:hover{transform:translateY(-2px);box-shadow:0 4px 8px #00000026;transition:all .3s ease}.btn-group .btn{border-radius:0}.btn-group .btn:first-child{border-top-left-radius:.375rem;border-bottom-left-radius:.375rem}.btn-group .btn:last-child{border-top-right-radius:.375rem;border-bottom-right-radius:.375rem}.table-responsive{border-radius:8px;overflow:hidden}.table th{border-top:none;font-weight:600;color:#495057}.badge{font-size:.85rem;padding:.5em .75em}.alert{border-radius:8px}.statistics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-bottom:30px}body{height:100%;font-family:Roboto,sans-serif;font-weight:400;background:#f6f8fa;margin:0}.progressive-assessment-container{width:95%;max-width:1200px;background:#fff;border-radius:16px;box-shadow:0 6px 20px #0000001f;padding:25px 28px;display:flex;flex-direction:column;align-items:flex-start;min-height:400px;height:fit-content;margin:40px auto 40px 250px}.progressive-assessment-container h2{font-size:2rem;color:#28a745;font-weight:700;margin:0 0 32px;letter-spacing:-.02em;width:100%;border-bottom:2px solid #e0e0e0;padding-bottom:15px}.student-info{font-size:15px;color:#495057;margin-bottom:24px;background-color:#f8f9fa;border-left:4px solid #28a745;padding:12px 16px;border-radius:8px;width:100%}.marks-table{width:100%;border-collapse:collapse;margin-bottom:25px;box-shadow:0 2px 8px #0000000d}.marks-table th,.marks-table td{border:1px solid #e0e0e0;padding:14px 16px;text-align:left;vertical-align:middle;font-size:15px}.marks-table th{background-color:#f8f9fa;font-weight:600;color:#333}.marks-table .exp-id{width:10%}.marks-table .exp-name{width:70%}.marks-table .marks{width:20%;text-align:center}.marks-input{width:80%;padding:12px 14px;border:1px solid #ddd;border-radius:6px;font-size:15px;text-align:center;box-sizing:border-box;transition:border-color .2s ease-in-out,box-shadow .2s ease-in-out}.marks-input:focus{outline:none;border-color:#28a745;box-shadow:0 0 0 3px #28a7451a}.submit-button{background-color:#28a745;color:#fff;padding:12px 32px;font-size:16px;font-weight:600;border:none;border-radius:8px;cursor:pointer;transition:all .2s ease-in-out;box-shadow:0 2px 5px #28a74533;display:block;margin:0 auto}.empty-table-message{text-align:center;color:#888;font-style:italic;padding:20px}@media (max-width: 1024px){.progressive-assessment-container{padding:30px 20px;width:98%;margin:0 auto 20px}}@media (max-width: 768px){.progressive-assessment-container{width:100%;margin:0 auto 10px;padding:20px 15px;border-radius:8px;box-shadow:none}.progressive-assessment-container h2{font-size:1.7rem}.marks-input{padding:10px 12px;font-size:14px}}@media (max-width: 480px){.progressive-assessment-container{padding:15px 10px;margin:0 auto 10px}.progressive-assessment-container h2{font-size:1.5rem}.student-info{font-size:13px;padding:10px 12px}.submit-button{padding:10px 24px;font-size:15px}}.timetable-main-content{margin-left:185px;margin-top:15px;padding:20px;background-color:#f8f9fa;min-height:80vh;width:90%}.attendance-container{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;padding:20px}.header-row{margin-bottom:20px}.header-row h3{font-size:2rem;color:#333;margin:0 0 10px;font-weight:700}.experiment-info{font-size:14px;color:#666;margin:0;font-weight:500}.toolbar{display:flex;align-items:center;gap:10px;margin-bottom:20px;padding:15px;background-color:#f8f9fa;border-radius:6px;border:1px solid #e0e0e0}.search-input{flex:1;padding:8px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px}.search-input:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 2px #007bff1a}.icon-btn{background:#fff;border:1px solid #ddd;border-radius:4px;padding:8px 10px;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.icon-btn:hover{background-color:#f8f9fa;border-color:#007bff}.icon-btn i{font-size:14px;color:#666}.dropdown-menu{position:absolute;top:100%;right:0;background:#fff;border:1px solid #ddd;border-radius:4px;box-shadow:0 4px 12px #00000026;padding:10px;min-width:120px;z-index:1000}.dropdown-label{display:flex;align-items:center;gap:8px;padding:5px 0;font-size:13px;cursor:pointer}.dropdown-label input[type=checkbox]{margin:0}.table-container{overflow-x:auto;border:1px solid #e0e0e0;border-radius:6px}.table-container table{width:100%;border-collapse:collapse;background:#fff}.table-container th,.table-container td{padding:12px 16px;text-align:left;border:1px solid #e0e0e0;font-size:14px}.table-container th{background-color:#f8f9fa;font-weight:600;color:#333;border-bottom:2px solid #e0e0e0}.table-container tbody tr:hover{background-color:#f8f9fa}.table-container th:not(:last-child),.table-container td:not(:last-child){border-right:1px solid #e0e0e0}.table-container th:last-child,.table-container td:last-child{border-right:none}.table-container tr:last-child td{border-bottom:none}.marks-input-field{width:80px;padding:6px 8px;border:1px solid #ddd;border-radius:4px;font-size:13px;text-align:center;box-sizing:border-box;transition:border-color .2s ease-in-out,box-shadow .2s ease-in-out}.marks-input-field:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 2px #007bff1a}.submit-wrapper{display:flex;justify-content:center;align-items:center;margin-top:30px;width:100%}.submit-button{background-color:#28a745;color:#fff;padding:12px 32px;font-size:16px;font-weight:600;border:none;border-radius:6px;cursor:pointer;transition:all .2s ease-in-out;box-shadow:0 2px 5px #28a74533}.submit-button:hover{background-color:#218838;transform:translateY(-1px);box-shadow:0 4px 8px #28a7454d}.submit-button:active{transform:translateY(0);box-shadow:0 2px 5px #28a74533}@media (max-width: 1024px){.timetable-main-content{margin-left:0;padding:15px}}@media (max-width: 768px){.toolbar{flex-wrap:wrap;gap:8px}.search-input{min-width:200px}.table-container th,.table-container td{padding:8px 12px;font-size:13px}.marks-input-field{width:60px;padding:4px 6px;font-size:12px}}@media (max-width: 480px){.theory-attendance-container{padding:15px}.header-row h3{font-size:1.3rem}.experiment-info{font-size:12px}.toolbar{padding:10px}.table-container th,.table-container td{padding:6px 8px;font-size:12px}.submit-button{padding:10px 24px;font-size:14px}}.view-assessment-select-page{width:100%!important;max-width:100%!important;margin:20px auto;padding:0 30px!important;font-family:Inter,-apple-system,sans-serif;box-sizing:border-box}.section-title{font-size:1.25rem;font-weight:700;display:flex;align-items:center;gap:10px;margin-bottom:20px;padding-bottom:8px;border-bottom:2px solid #e2e8f0}.section-title.text-primary{color:#2563eb!important;border-color:#dbeafe}.section-title.text-secondary{color:#64748b!important;border-color:#f1f5f9}.ciaan-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px;margin-top:15px}.ciaan-card{background:#fff;border-radius:16px;border:1px solid #e2e8f0;padding:20px;position:relative;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;box-shadow:0 4px 15px #00000008;display:flex;flex-direction:column;justify-content:space-between;min-height:180px;box-sizing:border-box}.ciaan-card:hover{transform:translateY(-4px);box-shadow:0 10px 20px #0000000f;border-color:#3b82f6}.card-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.card-icon{font-size:1.4rem;color:#3b82f6}.ciaan-id-badge{font-size:.75rem;font-weight:700;background-color:#eff6ff;color:#1d4ed8;padding:4px 10px;border-radius:20px;border:1px solid #dbeafe}.card-main{flex-grow:1;margin-bottom:15px}.subject-name{font-size:1.05rem;font-weight:800;color:#0f172a;margin:0 0 4px;line-height:1.4}.subject-code{font-size:.85rem;color:#64748b;font-weight:500}.card-bottom{display:flex;justify-content:space-between;border-top:1px solid #f1f5f9;padding-top:12px;gap:15px}.info-item{display:flex;flex-direction:column}.info-item-label{font-size:.65rem;font-weight:700;text-transform:uppercase;color:#94a3b8;margin-bottom:2px;letter-spacing:.5px}.info-item-val{font-size:.85rem;font-weight:700;color:#334155}.archived-card{opacity:.75;background-color:#f8fafc}.archived-card:hover{border-color:#94a3b8}.archived-card .card-icon{color:#64748b}.archived-card .ciaan-id-badge{background-color:#f1f5f9;color:#475569;border-color:#e2e8f0}.archived-overlay{position:absolute;top:10px;right:10px}.badge-archived{font-size:.65rem;font-weight:700;background-color:#f1f5f9;color:#475569;border:1px solid #e2e8f0;padding:2px 8px;border-radius:4px}.empty-section-alert{background:#f8fafc;border:1px dashed #cbd5e1;border-radius:12px;padding:24px;text-align:center;color:#64748b;font-weight:500;display:flex;align-items:center;justify-content:center;gap:8px;width:100%}.container{max-width:1200px;margin:auto}h4{font-weight:700;color:#333;margin-bottom:.5rem}p{font-size:1.05rem;margin-top:5px;margin-bottom:10px;color:#666}.alert-info{background-color:#e7f3fe;border:1px solid #b3d7ff;padding:15px;border-radius:8px;color:#084298}.stats-card{border:none;box-shadow:0 2px 4px #0000001a;border-radius:8px;margin-bottom:10px;transition:transform .2s ease}.stats-card:hover{transform:translateY(-2px);box-shadow:0 4px 8px #00000026}.stats-card .card-body{padding:1rem .5rem}.stats-card .card-title{font-size:1.5rem;font-weight:700;margin-bottom:.25rem}.stats-card .card-text{font-size:.8rem;color:#666;margin-bottom:0}.table{margin-top:20px;font-size:.95rem;box-shadow:0 2px 4px #0000001a;border-radius:8px;overflow:hidden}.table th,.table td{text-align:center;vertical-align:middle;padding:12px 8px}.table th{background-color:#f8f9fa;font-weight:600;color:#495057;border-bottom:2px solid #dee2e6}.table-warning{background-color:#fff3cd!important}.marks-badge{padding:4px 8px;border-radius:12px;font-weight:600;font-size:.9rem}.high-marks{background-color:#d4edda;color:#155724;border:1px solid #c3e6cb}.medium-marks{background-color:#d1ecf1;color:#0c5460;border:1px solid #bee5eb}.low-marks{background-color:#fff3cd;color:#856404;border:1px solid #ffeaa7}.fail-marks{background-color:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.grade-a-plus{background-color:#28a745!important;color:#fff!important}.grade-a{background-color:#20c997!important;color:#fff!important}.grade-b-plus{background-color:#17a2b8!important;color:#fff!important}.grade-b{background-color:#007bff!important;color:#fff!important}.grade-c-plus{background-color:#ffc107!important;color:#212529!important}.grade-c{background-color:#fd7e14!important;color:#fff!important}.grade-f{background-color:#dc3545!important;color:#fff!important}.d-flex input.form-control{min-width:250px;border-radius:6px}.btn{font-size:.9rem;border-radius:6px;padding:8px 16px}.btn-outline-success:hover{background-color:#28a745;border-color:#28a745}.btn-outline-primary:hover{background-color:#007bff;border-color:#007bff}.btn-outline-secondary:hover{background-color:#6c757d;border-color:#6c757d}.spinner-border{width:3rem;height:3rem}.text-muted{font-size:.9rem}.btn-outline-success{border-color:#28a745;color:#28a745}@media (max-width: 768px){.container{padding:0 15px}.d-flex.justify-content-between{flex-direction:column;gap:15px}.d-flex.justify-content-between>div{width:100%}.d-flex input.form-control{width:100%!important;min-width:unset;margin-bottom:10px}.stats-card .card-title{font-size:1.2rem}.table{font-size:.85rem}.table th,.table td{padding:8px 4px}.marks-badge{font-size:.8rem;padding:2px 6px}.btn{font-size:.85rem;padding:6px 12px}}@media (max-width: 576px){.row.mb-4{margin-bottom:1rem!important}.col-md-2{margin-bottom:10px}.stats-card .card-body{padding:.75rem .5rem}.alert-info .row .col-md-6{margin-bottom:10px}}@media print{.btn,.d-flex,.alert{display:none!important}.container{max-width:100%!important}.table{font-size:.8rem}.stats-card{box-shadow:none;border:1px solid #dee2e6}}.view-assessment-page-wrapper{padding:20px;background-color:#f8f9fa;min-height:calc(100vh - 120px);position:relative;z-index:1}.view-assessment-container{position:relative;z-index:1;width:100%;max-width:none;margin:0 auto;background:#fff;border-radius:12px;box-shadow:0 4px 12px #0000001a;overflow:hidden}.assessment-content{position:relative;z-index:1;padding:0}.assessment-header-card{border-radius:0;border:none;margin-bottom:0;box-shadow:none}.assessment-table-wrapper{position:relative;z-index:1;background:#fff;border-radius:0;box-shadow:none;border:none}.assessment-table-responsive{position:relative;overflow-x:auto;overflow-y:auto;max-height:calc(100vh - 250px)}.assessment-table{position:relative;margin-bottom:0;background:#fff;font-size:.85rem;border-collapse:collapse;width:100%}.assessment-table thead th{position:sticky;top:0;z-index:3;background-color:#28a745!important;color:#fff;padding:8px 6px;text-align:center;font-weight:600;font-size:.8rem;border:1px solid #dee2e6}.assessment-table tbody td{padding:6px 4px;text-align:center;vertical-align:middle;border:1px solid #dee2e6;font-size:.8rem}.assessment-table tbody tr:hover{background-color:#f8f9fa}.roll-no-header,.roll-no-cell{background-color:#28a745!important;color:#fff!important;font-weight:700;width:80px;min-width:80px;max-width:80px}.student-name-header,.student-name-cell{width:200px;min-width:200px;max-width:200px;text-align:left!important;padding-left:12px!important}.student-name-header{background-color:#28a745!important;color:#fff!important}.student-name-cell{font-weight:500}.assessment-table th:not(.roll-no-header):not(.student-name-header):not(.total-header){width:80px;min-width:80px;max-width:80px}.total-header,.total-cell{width:80px;min-width:80px;max-width:80px;background-color:#28a745!important;color:#fff!important}@media (max-width: 768px){.view-assessment-page-wrapper{margin-left:0;padding:10px}.view-assessment-container{max-width:100%}.assessment-table-responsive{max-height:calc(100vh - 200px)}.assessment-table{font-size:.75rem}.assessment-table thead th{padding:6px 4px;font-size:.7rem}.assessment-table tbody td{padding:4px 2px;font-size:.7rem}}@media print,(min-width: 0) and (max-width: 99999px){body.printing .print-section,body.printing .no-print{display:none!important}}@media print{.print-only-content{display:block!important;visibility:visible!important;opacity:1!important;background:#fff!important;color:#000!important;padding:15px!important}.view-assessment-container,.print-section,.no-print{display:none!important}.basic-header,.basic-footer,.sidebar,.main-content-wrapper>header,.main-content-wrapper>footer{display:none!important}*{-webkit-print-color-adjust:exact!important;color-adjust:exact!important}body,html{margin:0!important;padding:0!important;background:#fff!important;color:#000!important;font-size:12pt!important}.app-container,.main-content-wrapper,.scrollable-content{margin:0!important;padding:0!important;background:#fff!important;width:100%!important;max-width:none!important;overflow:visible!important}.view-assessment-container{box-shadow:none!important;border-radius:0!important;margin:0!important;padding:15px!important;background:#fff!important;width:100%!important;max-width:none!important;display:block!important;visibility:visible!important;opacity:1!important}.assessment-header{text-align:center;margin-bottom:20px;page-break-inside:avoid;background:#fff!important;display:block!important;visibility:visible!important;opacity:1!important}.course-diary-title h1{color:#000!important;font-size:18pt!important;margin:0 0 10px!important;font-weight:700!important;display:block!important;visibility:visible!important;opacity:1!important}.table-title{color:#000!important;font-size:14pt!important;margin:10px 0!important;text-align:center}.ciaan-info{background:#f8f9fa!important;color:#000!important;border:1px solid #000!important;padding:10px!important;margin-bottom:15px!important;page-break-inside:avoid;font-size:10pt!important}.assessment-table-container{background:#fff!important;padding:0!important;margin:0!important;display:block!important;visibility:visible!important;opacity:1!important}.assessment-table-responsive{overflow:visible!important;max-height:none!important;box-shadow:none!important;border-radius:0!important;display:block!important;visibility:visible!important;opacity:1!important}.assessment-table{width:100%!important;font-size:10pt!important;border-collapse:collapse!important;border:2px solid #000!important;background:#fff!important;margin:0!important;display:table!important;visibility:visible!important;opacity:1!important}.assessment-table thead th{background:#e9ecef!important;color:#000!important;border:1px solid #000!important;padding:8px 4px!important;font-weight:700!important;text-align:center!important;font-size:9pt!important}.assessment-table tbody td{border:1px solid #000!important;padding:6px 4px!important;background:#fff!important;color:#000!important;text-align:center!important;font-size:9pt!important}.roll-no-header,.student-name-header{background:#d4edda!important;color:#000!important}.student-name-cell{text-align:left!important;padding-left:8px!important}.total-header,.total-cell{background:#d4edda!important;color:#000!important;font-weight:700!important}.assessment-table tbody tr:hover{background-color:#fff!important;transform:none!important;box-shadow:none!important}.assessment-table{page-break-inside:auto}.assessment-table thead{display:table-header-group}.assessment-table tbody tr{page-break-inside:avoid}}@media (min-width: 769px){.view-assessment-page-wrapper{margin-left:220px}}@media print{.view-assessment-page-wrapper{background:#fff;padding:0}.view-assessment-container{box-shadow:none;border-radius:0;max-width:100%}.assessment-table-responsive{max-height:none;overflow:visible}}.practical-exam-section{--pex-bg-1: #f3f8ff;--pex-bg-2: #eef5ff;--pex-panel: #ffffff;--pex-border: #d9e5f7;--pex-text: #10223b;--pex-muted: #5c6b80;--pex-primary: #0c5bbf;--pex-primary-strong: #084693;--pex-info: #0e7f85;--pex-warning: #b06a00;min-height:calc(100vh - 64px);padding:1.25rem;background:radial-gradient(circle at 8% 10%,rgba(12,91,191,.12),transparent 38%),radial-gradient(circle at 92% 0%,rgba(14,127,133,.1),transparent 34%),linear-gradient(180deg,var(--pex-bg-1),var(--pex-bg-2))}.practical-exam-loading{display:grid;place-items:center;min-height:calc(100vh - 100px);color:#4f6078;font-weight:600}.practical-hero,.practical-section-card,.practical-flow-steps{max-width:1180px;margin:0 auto 1rem}.practical-hero{border:1px solid var(--pex-border);border-radius:18px;background:linear-gradient(145deg,#fff,#f0f6ff);padding:1.1rem;display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap}.practical-hero h1{margin:0;font-size:1.4rem;font-weight:800;color:var(--pex-text)}.practical-hero p{margin:.35rem 0 0;color:var(--pex-muted)}.practical-hero-meta{display:grid;grid-template-columns:repeat(3,minmax(120px,1fr));gap:.65rem}.practical-hero-meta>div{border:1px solid #d5e2f7;border-radius:12px;background:#fff;padding:.55rem .7rem;display:flex;flex-direction:column;gap:.2rem}.practical-hero-meta strong{color:var(--pex-text);font-size:1.15rem}.practical-hero-meta span{color:var(--pex-muted);font-size:.8rem}.practical-flow-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem}.flow-step{display:flex;align-items:center;gap:.6rem;border:1px solid var(--pex-border);border-radius:12px;background:#f8fbff;padding:.6rem .8rem}.flow-step.is-done{background:#eaf3ff;border-color:#bfd7fb}.flow-index{inline-size:24px;block-size:24px;border-radius:50%;display:grid;place-items:center;background:#dde9fb;color:#1e4575;font-weight:700;font-size:.8rem}.flow-step.is-done .flow-index{background:linear-gradient(140deg,var(--pex-primary),var(--pex-primary-strong));color:#fff}.flow-title{font-weight:700;color:var(--pex-text);font-size:.9rem}.practical-section-card{background:var(--pex-panel);border:1px solid var(--pex-border);border-radius:16px;padding:1rem;box-shadow:0 10px 24px #0e264a0f}.section-card-title{margin:0 0 .9rem;font-size:1.05rem;color:var(--pex-text);font-weight:800}.section-controls{display:grid;grid-template-columns:repeat(2,minmax(220px,1fr));gap:1rem}.control-group label{display:block;margin-bottom:.35rem;font-size:.82rem;text-transform:uppercase;letter-spacing:.03em;font-weight:700;color:#566c8d}.control-group .form-control{width:100%;border:1px solid #cad8ef;border-radius:10px;min-height:42px;padding:0 .7rem;font-size:.95rem}.control-group .form-control:focus{outline:none;border-color:#9ebbe0;box-shadow:0 0 0 .2rem #0c5bbf24}.section-actions-grid{display:grid;grid-template-columns:repeat(3,minmax(220px,1fr));gap:.9rem}.action-card{text-align:left;border:1px solid #c7d8f3;border-radius:14px;background:#fff;padding:.9rem;display:flex;flex-direction:column;gap:.4rem;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.action-card i{font-size:1.2rem}.action-card span{font-weight:800;color:#173058}.action-card small{color:#5f7088;line-height:1.45}.action-card:disabled{opacity:.6;cursor:not-allowed}.action-card:hover:not(:disabled){transform:translateY(-2px)}.action-add{border-color:#b9d4fb;background:linear-gradient(145deg,#fff,#eef5ff)}.action-add i{color:var(--pex-primary)}.action-add:hover:not(:disabled){box-shadow:0 10px 20px #0c5bbf29}.action-manage{border-color:#b6e2e4;background:linear-gradient(145deg,#fff,#ecfafb)}.action-manage i{color:var(--pex-info)}.action-manage:hover:not(:disabled){box-shadow:0 10px 20px #0e7f8526}.action-status{border-color:#f2ddb6;background:linear-gradient(145deg,#fff,#fff8ec)}.action-status i{color:var(--pex-warning)}.action-status:hover:not(:disabled){box-shadow:0 10px 20px #b06a0029}.exams-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:.9rem}.course-card{border:1px solid #d8e5f6;border-radius:12px;background:#fbfdff;padding:.8rem}.course-card-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:.6rem}.course-card-head h3{margin:0;color:#1a3860;font-size:1rem;font-weight:800}.course-card-head span{font-size:.75rem;font-weight:700;padding:.2rem .45rem;border-radius:999px;background:#eaf2ff;color:#35598a}.course-card ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.35rem}.course-card li{border:1px solid #e4edf9;background:#fff;border-radius:8px;padding:.45rem .55rem;display:flex;justify-content:space-between;align-items:center;gap:.5rem}.exam-title{font-size:.9rem;color:#18345d;font-weight:600}.course-card small{color:#6f809a;font-size:.75rem}.course-more{margin:.5rem 0 0;color:#6c7f9a;font-size:.82rem}@media (max-width: 980px){.section-actions-grid,.section-controls,.practical-flow-steps{grid-template-columns:1fr}.practical-hero-meta{width:100%;grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width: 700px){.practical-exam-section{padding:.9rem}.practical-hero-meta{grid-template-columns:1fr}}.practical-exam-dashboard{--ped-bg-1: #f3f8ff;--ped-bg-2: #eef5ff;--ped-text: #10223d;--ped-muted: #5f7088;min-height:calc(100vh - 64px);padding:1.25rem;background:radial-gradient(circle at 8% 10%,rgba(13,91,190,.12),transparent 40%),radial-gradient(circle at 90% 0%,rgba(8,70,147,.1),transparent 34%),linear-gradient(180deg,var(--ped-bg-1),var(--ped-bg-2))}.dashboard-header{text-align:center;margin:0 auto 1rem;color:var(--ped-text);max-width:1080px}.dashboard-header .dashboard-title{font-size:1.95rem;font-weight:800;margin:0;color:var(--ped-text)}.dashboard-header .dashboard-subtitle{font-size:1rem;color:var(--ped-muted);margin-top:.45rem}.dashboard-flow-bar{max-width:1080px;margin:0 auto 1rem;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem}.dashboard-flow-bar span{border:1px solid #d2e0f5;border-radius:10px;background:#f8fbff;padding:.55rem .7rem;text-align:center;color:#2a476f;font-weight:700;font-size:.86rem}.cards-container{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:.9rem;max-width:1080px;margin:0 auto}.dashboard-card{background:#fff;border-radius:14px;border:1px solid #d9e4f6;box-shadow:0 10px 22px #102c5414;transition:all .3s ease;display:flex;flex-direction:column;height:100%}.dashboard-card:hover{transform:translateY(-3px)}.card-header{padding:1rem 1rem .6rem;display:flex;align-items:center;justify-content:flex-start}.card-header i{font-size:1.5rem}.card-body{padding:0 1rem .8rem;flex-grow:1}.card-title{font-size:1.08rem;font-weight:800;margin:0 0 .45rem;color:#173058}.card-description{font-size:.9rem;color:#5f7088;margin:0;line-height:1.5}.card-footer{padding:0 1rem 1rem}.dashboard-cta{width:100%;border:none;border-radius:10px;min-height:40px;color:#fff;font-size:.92rem;font-weight:700;cursor:pointer;transition:transform .2s ease,filter .2s ease}.dashboard-cta:hover{transform:translateY(-1px);filter:brightness(1.03)}.tone-primary .card-header i{color:#0c5bbf}.tone-primary .dashboard-cta{background:linear-gradient(135deg,#0c5bbf,#084693)}.tone-primary{background:linear-gradient(150deg,#fff,#f1f6ff)}.tone-info .card-header i{color:#0e7f85}.tone-info .dashboard-cta{background:linear-gradient(135deg,#0e7f85,#0a666b)}.tone-info{background:linear-gradient(150deg,#fff,#effbfc)}.tone-warning .card-header i{color:#b06a00}.tone-warning .dashboard-cta{background:linear-gradient(135deg,#ca7d07,#9d5f04)}.tone-warning{background:linear-gradient(150deg,#fff,#fff7ec)}@media (max-width: 768px){.practical-exam-dashboard{padding:1rem}.dashboard-header .dashboard-title{font-size:1.45rem}.dashboard-header .dashboard-subtitle{font-size:.95rem}.dashboard-flow-bar{grid-template-columns:1fr}.cards-container{grid-template-columns:1fr;gap:.75rem}}.add-practical-container{padding:30px;background:linear-gradient(135deg,#f5f7fa,#c3cfe2);min-height:100vh}.form-header{text-align:center;margin-bottom:40px;color:#2c3e50}.form-title{font-size:2.2rem;font-weight:700;margin:0;color:#2c3e50}.form-subtitle{font-size:1rem;color:#7f8c8d;margin-top:10px}.practical-form{background:#fff;border-radius:12px;box-shadow:0 4px 20px #0000001a;max-width:800px;margin:0 auto;padding:40px}.form-section{margin-bottom:35px}.form-section:last-of-type{margin-bottom:0}.section-title{font-size:1.3rem;font-weight:600;color:#2c3e50;margin:0 0 25px;padding-bottom:10px;border-bottom:2px solid #ecf0f1}.form-group{margin-bottom:20px}.form-label{display:block;font-weight:600;color:#2c3e50;margin-bottom:8px;font-size:.95rem}.required{color:#e74c3c;font-weight:700}.form-control{width:100%;padding:12px 15px;border:2px solid #ecf0f1;border-radius:6px;font-size:1rem;font-family:inherit;transition:all .3s ease;box-sizing:border-box}.form-control:focus{outline:none;border-color:#3498db;box-shadow:0 0 0 3px #3498db1a}.form-control::placeholder{color:#bdc3c7}textarea.form-control{resize:vertical;min-height:100px}.char-count{display:inline-block;margin-top:5px;font-size:.85rem;color:#95a5a6}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.form-col{margin-bottom:0}.divisions-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:15px;padding:20px;background:#f8f9fa;border-radius:8px}.division-checkbox{display:flex;align-items:center;padding:12px 15px;background:#fff;border:2px solid #ecf0f1;border-radius:6px;cursor:pointer;transition:all .3s ease;font-weight:500;color:#2c3e50}.division-checkbox:hover{border-color:#3498db;background:#ecf7ff}.division-checkbox input[type=checkbox]{margin-right:10px;width:18px;height:18px;cursor:pointer;accent-color:#3498db}.division-checkbox input[type=checkbox]:checked+.checkbox-label{color:#3498db;font-weight:600}.checkbox-label{cursor:pointer}.no-divisions-message{padding:20px;background:#fff3cd;border:1px solid #ffc107;border-radius:6px;color:#856404;margin-bottom:20px}.no-divisions-message p{margin:0;font-size:.95rem}.selected-info{margin-top:15px;padding:12px;background:#d4edda;border:1px solid #c3e6cb;border-radius:6px;color:#155724;font-size:.9rem}.alert{padding:15px;border-radius:6px;margin-bottom:20px;font-weight:500}.alert-danger{background:#f8d7da;border:1px solid #f5c6cb;color:#721c24}.alert-success{background:#d4edda;border:1px solid #c3e6cb;color:#155724}.form-actions{display:flex;gap:15px;margin-top:30px;padding-top:20px;border-top:2px solid #ecf0f1;justify-content:flex-end}.btn{padding:12px 30px;border:none;border-radius:6px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;text-transform:uppercase;letter-spacing:.5px;min-width:150px;text-align:center}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{background:#95a5a6;color:#fff}.btn-secondary:hover{background:#7f8c8d;transform:translateY(-2px)}.loading-spinner{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px}.spinner{width:50px;height:50px;border:4px solid #ecf0f1;border-top:4px solid #3498db;border-radius:50%;animation:spin 1s linear infinite}.loading-spinner p{margin-top:15px;font-size:1.1rem;color:#7f8c8d;font-weight:500}@media (max-width: 768px){.add-practical-container{padding:15px}.practical-form{padding:20px}.form-title{font-size:1.6rem}.form-row{grid-template-columns:1fr;gap:15px}.divisions-grid{grid-template-columns:1fr}.form-actions{flex-direction:column}.btn{width:100%}}.manage-practical-container{--mp-bg-a: #f4f8ff;--mp-bg-b: #edf4ff;--mp-card: #ffffff;--mp-border: #d7e4f7;--mp-text: #10233e;--mp-muted: #60718a;--mp-primary: #0e5bbe;--mp-primary-deep: #083f83;--mp-info-bg: #eaf2ff;--mp-info-tx: #184f9e;--mp-cyan-bg: #e8f8fb;--mp-cyan-tx: #0b7078;--mp-warn-bg: #fff4e8;--mp-warn-tx: #9d4b11;--mp-danger-bg: #ffecee;--mp-danger-tx: #ab3131;min-height:calc(100vh - 64px);padding:1.25rem;background:radial-gradient(circle at 10% 8%,rgba(14,91,190,.12),transparent 38%),radial-gradient(circle at 92% 2%,rgba(8,63,131,.12),transparent 32%),linear-gradient(180deg,var(--mp-bg-a),var(--mp-bg-b))}.manage-practical-hero,.summary-strip,.filters-panel,.exam-grid,.empty-state,.mp-alert,.loading-spinner{max-width:1180px;margin-left:auto;margin-right:auto}.manage-practical-hero{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem;padding:1rem 1.1rem;border:1px solid var(--mp-border);border-radius:18px;background:linear-gradient(145deg,#fff,#eef5ff);box-shadow:0 12px 26px #122b5214}.mp-title{margin:0;padding:0;background:transparent;color:var(--mp-text);font-size:1.7rem;font-weight:800;line-height:1.2}.mp-subtitle{margin:.35rem 0 0;color:var(--mp-muted);max-width:700px;font-size:1rem}.hero-add-btn{border:none;border-radius:12px;min-width:220px;min-height:44px;padding:0 1rem;background:linear-gradient(135deg,var(--mp-primary),var(--mp-primary-deep));color:#fff;font-weight:700;display:inline-flex;align-items:center;justify-content:center;gap:.45rem;box-shadow:0 12px 24px #0e5bbe47;transition:transform .2s ease,filter .2s ease}.hero-add-btn:hover{transform:translateY(-1px);filter:brightness(1.03)}.summary-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;margin-bottom:1rem}.mp-summary-tile{border:1px solid var(--mp-border);border-radius:12px;background:var(--mp-card);padding:.7rem .9rem}.mp-summary-tile span{display:block;margin-bottom:.2rem;color:#5b7294;font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em}.mp-summary-tile strong{color:var(--mp-text);font-size:1.25rem}.filters-panel{display:grid;grid-template-columns:minmax(260px,1fr) minmax(220px,280px) auto;gap:.75rem;align-items:end;margin-bottom:1rem;padding:.9rem;border:1px solid var(--mp-border);border-radius:14px;background:#fff;box-shadow:0 8px 18px #122b520f}.mp-filter-group{display:flex;flex-direction:column}.mp-filter-label{margin-bottom:.35rem;color:#5b7294;font-size:.79rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em}.mp-filter-input{min-height:42px;border:1px solid #c8d8ef;border-radius:10px;padding:0 .75rem;color:#173058;font-size:.95rem}.mp-filter-input:focus{outline:none;border-color:#9fbde1;box-shadow:0 0 0 .2rem #0e5bbe24}.filters-actions{display:flex;gap:.5rem;flex-wrap:wrap;justify-content:flex-end}.mp-secondary-btn{min-height:40px;border:1px solid #c6d6ef;border-radius:10px;background:#f5f9ff;color:#25466f;padding:0 .8rem;font-weight:700}.mp-secondary-btn:hover{background:#eaf3ff}.exam-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:.85rem}.exam-card{border:1px solid var(--mp-border);border-radius:14px;background:var(--mp-card);box-shadow:0 10px 22px #122b5212;padding:.95rem;display:flex;flex-direction:column;gap:.75rem}.exam-card-head{display:flex;justify-content:space-between;align-items:center;gap:.7rem}.exam-card-head h3{margin:0;color:#16335a;font-size:1.06rem;font-weight:800}.mp-status-pill{border-radius:999px;border:1px solid transparent;padding:.22rem .6rem;font-size:.74rem;font-weight:700;text-transform:uppercase;letter-spacing:.02em}.mp-status-pill.enabled{background:#eaf8ef;border-color:#bfe8ca;color:#1a7a34}.mp-status-pill.disabled{background:#fff3f3;border-color:#f0c7c7;color:#a23b3b}.exam-meta-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem}.exam-meta-grid>div{border:1px solid #e2ebf8;border-radius:10px;background:#fbfdff;padding:.45rem .55rem}.mp-meta-label{display:block;margin-bottom:.12rem;color:#677f9f;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em}.exam-meta-grid p{margin:0;color:#1f3d65;font-size:.9rem;font-weight:600}.mp-exam-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem}.mp-action-btn{width:100%;min-height:42px;border:none;border-radius:10px;font-size:.86rem;font-weight:700;display:inline-flex;align-items:center;justify-content:center;gap:.45rem;padding:0 .6rem;text-align:center;white-space:nowrap;transition:transform .18s ease,filter .18s ease}.mp-action-btn:hover{transform:translateY(-1px);filter:brightness(1.01)}.mp-action-view{background:var(--mp-info-bg);color:var(--mp-info-tx)}.mp-action-responses{background:var(--mp-cyan-bg);color:var(--mp-cyan-tx)}.mp-action-edit{background:var(--mp-warn-bg);color:var(--mp-warn-tx)}.mp-action-delete{background:var(--mp-danger-bg);color:var(--mp-danger-tx)}.delete-confirm-wrap{grid-column:1 / -1;display:grid;grid-template-columns:1fr 1fr;gap:.45rem}.mp-action-delete-confirm{background:#b53232;color:#fff}.mp-action-cancel{background:#dde6f4;color:#2f4362}.mp-alert{border-radius:10px;padding:.7rem .85rem;margin-bottom:1rem}.mp-alert-danger{background:#ffecee;border:1px solid #f0cccc;color:#872d2d}.empty-state{text-align:center;border:1px solid var(--mp-border);border-radius:14px;background:#fff;padding:2rem 1rem}.empty-state i{font-size:2.8rem;color:#9bb0ce;display:block;margin-bottom:.7rem}.empty-state p{margin:0;color:#5f7088;font-weight:600}.mp-primary-cta{margin-top:.8rem;min-height:40px;border:none;border-radius:10px;padding:0 1rem;color:#fff;font-weight:700;background:linear-gradient(135deg,var(--mp-primary),var(--mp-primary-deep))}.spinner{width:42px;height:42px;border:3px solid #d8e5f6;border-top-color:var(--mp-primary);border-radius:50%;animation:mp-spin .85s linear infinite}@keyframes mp-spin{to{transform:rotate(360deg)}}@media (max-width: 980px){.manage-practical-hero{flex-direction:column;align-items:stretch}.summary-strip{grid-template-columns:1fr}.hero-add-btn{width:100%}.filters-panel{grid-template-columns:1fr}.filters-actions{justify-content:stretch}.mp-secondary-btn{flex:1}}@media (max-width: 700px){.manage-practical-container{padding:.9rem}.exam-grid,.exam-meta-grid,.mp-exam-actions,.delete-confirm-wrap{grid-template-columns:1fr}}.enable-disable-container{--edp-bg-a: #f3f8ff;--edp-bg-b: #ecf4ff;--edp-panel: #ffffff;--edp-border: #d8e5f6;--edp-text: #11243f;--edp-muted: #60718a;--edp-primary: #0f5cc0;--edp-primary-strong: #084892;--edp-success-bg: #eaf8ef;--edp-success-border: #bee8c8;--edp-success-text: #1a7a34;--edp-danger-bg: #fff0f1;--edp-danger-border: #f2c7cb;--edp-danger-text: #a23640;min-height:calc(100vh - 64px);padding:1.25rem;background:radial-gradient(circle at 8% 8%,rgba(15,92,192,.12),transparent 40%),radial-gradient(circle at 92% 2%,rgba(8,72,146,.1),transparent 34%),linear-gradient(180deg,var(--edp-bg-a),var(--edp-bg-b))}.edp-hero,.edp-filter-panel,.edp-grid,.edp-empty-state,.edp-alert,.edp-info-box,.loading-spinner{max-width:1180px;margin-left:auto;margin-right:auto}.edp-hero{border:1px solid var(--edp-border);border-radius:18px;background:linear-gradient(145deg,#fff,#eef5ff);box-shadow:0 12px 26px #122b5214;padding:1rem 1.1rem;margin-bottom:1rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}.edp-title{margin:0;color:var(--edp-text);font-size:1.6rem;font-weight:800}.edp-subtitle{margin:.35rem 0 0;color:var(--edp-muted);max-width:680px}.edp-summary{display:grid;grid-template-columns:repeat(3,minmax(96px,1fr));gap:.5rem}.edp-summary>div{border:1px solid #d7e4f6;border-radius:12px;background:#fff;padding:.5rem .65rem}.edp-summary span{display:block;color:#607393;font-size:.74rem;text-transform:uppercase;letter-spacing:.03em;font-weight:700;margin-bottom:.1rem}.edp-summary strong{color:var(--edp-text);font-size:1.1rem}.edp-filter-panel{margin-bottom:1rem;border:1px solid var(--edp-border);border-radius:14px;background:var(--edp-panel);box-shadow:0 8px 18px #122b520f;padding:.9rem;max-width:460px}.edp-filter-group{display:flex;flex-direction:column}.edp-filter-label{margin-bottom:.35rem;color:#5c7395;font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em}.edp-filter-input{min-height:42px;border:1px solid #c8d8ef;border-radius:10px;padding:0 .75rem;font-size:.95rem;color:#173058}.edp-filter-input:focus{outline:none;border-color:#9fbee4;box-shadow:0 0 0 .2rem #0f5cc024}.edp-alert{border-radius:10px;padding:.7rem .85rem;margin-bottom:1rem}.edp-alert-danger{background:var(--edp-danger-bg);border:1px solid var(--edp-danger-border);color:#822c33}.edp-alert-success{background:var(--edp-success-bg);border:1px solid var(--edp-success-border);color:#1e6f34}.edp-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(330px,1fr));gap:.85rem;margin-bottom:1rem}.edp-card{border:1px solid var(--edp-border);border-radius:14px;background:#fff;box-shadow:0 10px 22px #122b5212;padding:.9rem;display:flex;flex-direction:column;gap:.75rem}.edp-card-head{display:flex;align-items:center;justify-content:space-between;gap:.7rem}.edp-card-head h3{margin:0;color:#17335a;font-size:1.04rem;font-weight:800}.edp-status-pill{display:inline-flex;align-items:center;gap:.35rem;border-radius:999px;border:1px solid transparent;padding:.24rem .65rem;font-size:.74rem;font-weight:700;text-transform:uppercase;letter-spacing:.02em}.edp-status-pill.enabled{background:var(--edp-success-bg);border-color:var(--edp-success-border);color:var(--edp-success-text)}.edp-status-pill.disabled{background:var(--edp-danger-bg);border-color:var(--edp-danger-border);color:var(--edp-danger-text)}.edp-meta-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem}.edp-meta-grid>div{border:1px solid #e2ebf8;border-radius:10px;background:#fbfdff;padding:.45rem .55rem}.edp-meta-label{display:block;margin-bottom:.1rem;color:#6880a0;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em}.edp-meta-grid p{margin:0;color:#1f3d65;font-size:.9rem;font-weight:600}.edp-toggle-btn{min-height:42px;border:none;border-radius:10px;font-weight:700;font-size:.87rem;transition:transform .18s ease,filter .18s ease}.edp-toggle-btn:hover{transform:translateY(-1px);filter:brightness(1.02)}.edp-toggle-btn.enable{background:linear-gradient(135deg,#1f9d56,#167b43);color:#fff}.edp-toggle-btn.disable{background:linear-gradient(135deg,#d14a59,#a73543);color:#fff}.edp-empty-state{text-align:center;border:1px solid var(--edp-border);border-radius:14px;background:#fff;padding:2rem 1rem}.edp-empty-state i{font-size:2.8rem;color:#9bb0ce;display:block;margin-bottom:.7rem}.edp-empty-state p{margin:0;color:#5f7088;font-weight:600}.edp-empty-message{margin-top:.4rem!important;font-size:.9rem;font-weight:500}.edp-info-box{border:1px solid var(--edp-border);border-radius:14px;background:#fff;padding:1rem;box-shadow:0 8px 18px #122b520f}.edp-info-box h3{margin:0 0 .8rem;color:var(--edp-text);font-size:1rem;font-weight:800}.edp-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:.7rem}.edp-info-item{display:flex;gap:.7rem;border:1px solid #e3ebf8;border-radius:10px;padding:.7rem;background:#fbfdff}.edp-info-icon{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;font-size:1.05rem;flex-shrink:0}.edp-info-icon.enabled{background:var(--edp-success-bg);color:var(--edp-success-text)}.edp-info-icon.disabled{background:var(--edp-danger-bg);color:var(--edp-danger-text)}.edp-info-item h4{margin:0;color:#203f67;font-size:.9rem;font-weight:700}.edp-info-item p{margin:.2rem 0 0;color:#60718a;font-size:.84rem}.loading-spinner{min-height:calc(100vh - 180px);display:grid;place-items:center;color:#5f7088}.spinner{width:42px;height:42px;border:3px solid #d8e5f6;border-top-color:var(--edp-primary);border-radius:50%;animation:edp-spin .85s linear infinite}@keyframes edp-spin{to{transform:rotate(360deg)}}@media (max-width: 980px){.edp-hero{flex-direction:column;align-items:stretch}.edp-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.edp-filter-panel{max-width:none}}@media (max-width: 700px){.enable-disable-container{padding:.9rem}.edp-summary,.edp-meta-grid,.edp-grid{grid-template-columns:1fr}}.mpq-container{max-width:1000px;margin:0 auto;padding:20px}.mpq-content{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;padding:30px}.mpq-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;border-bottom:2px solid #f0f0f0;padding-bottom:20px}.mpq-header h2{color:#333;font-size:24px;margin:0}.mpq-exam-title{color:#666;font-size:14px;margin:8px 0 0}.mpq-error{background-color:#fee;border:1px solid #fcc;color:#c33;padding:12px;border-radius:4px;margin-bottom:20px}.mpq-success{background-color:#e8f5e9;border:1px solid #c8e6c9;color:#2e7d32;padding:12px;border-radius:4px;margin-bottom:20px}.mpq-questions-section{margin-top:20px}.mpq-questions-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.mpq-questions-header h3{color:#333;font-size:18px;margin:0}.mpq-form{background-color:#f9f9f9;border:2px solid #e0e0e0;border-radius:8px;padding:20px;margin-bottom:25px}.mpq-form h4{color:#333;font-size:16px;margin-top:0;margin-bottom:20px}.mpq-form-group{display:flex;flex-direction:column;gap:8px;margin-bottom:20px}.mpq-form-group label{font-weight:600;color:#333;font-size:14px}.mpq-form-group input,.mpq-form-group textarea,.mpq-form-group select{padding:10px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px;font-family:inherit}.mpq-form-group input:focus,.mpq-form-group textarea:focus,.mpq-form-group select:focus{outline:none;border-color:#4caf50;box-shadow:0 0 0 3px #4caf501a}.mpq-form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}.mpq-form-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:20px}.mpq-questions-list{display:flex;flex-direction:column;gap:15px}.mpq-question-card{background-color:#fafafa;border:1px solid #e0e0e0;border-radius:8px;padding:20px;display:flex;justify-content:space-between;align-items:flex-start;transition:box-shadow .2s ease}.mpq-question-card:hover{box-shadow:0 2px 8px #0000001a}.mpq-question-content{flex:1}.mpq-question-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.mpq-question-header h4{color:#333;font-size:16px;margin:0}.mpq-difficulty{font-size:12px;font-weight:600;padding:4px 10px;border-radius:12px;text-transform:uppercase}.mpq-difficulty-easy{background-color:#e8f5e9;color:#2e7d32}.mpq-difficulty-medium{background-color:#fff3e0;color:#f57c00}.mpq-difficulty-hard{background-color:#ffebee;color:#c62828}.mpq-question-text{color:#555;line-height:1.5;margin:10px 0;padding:12px;background-color:#fff;border-radius:4px;border-left:3px solid #4caf50}.mpq-question-marks{color:#666;font-size:13px;font-weight:500;margin:8px 0 0}.mpq-question-actions{display:flex;gap:8px;margin-left:20px;flex-shrink:0}.mpq-btn{padding:8px 16px;border:none;border-radius:4px;cursor:pointer;font-weight:600;font-size:13px;transition:all .3s ease;white-space:nowrap}.mpq-btn:disabled{opacity:.5;cursor:not-allowed}.mpq-btn-primary{background-color:#4caf50;color:#fff}.mpq-btn-primary:hover:not(:disabled){background-color:#45a049}.mpq-btn-secondary{background-color:#f0f0f0;color:#333;border:1px solid #ddd}.mpq-btn-secondary:hover:not(:disabled){background-color:#e0e0e0}.mpq-btn-edit{background-color:#2196f3;color:#fff}.mpq-btn-edit:hover:not(:disabled){background-color:#0b7dda}.mpq-btn-delete{background-color:#f44336;color:#fff}.mpq-btn-delete:hover:not(:disabled){background-color:#d32f2f}.mpq-btn-back{background-color:#757575;color:#fff}.mpq-btn-back:hover{background-color:#616161}.mpq-empty-state{text-align:center;color:#999;padding:40px 20px;font-size:14px}.mpq-summary{background-color:#f5f5f5;border-top:2px solid #e0e0e0;padding:15px;margin-top:20px;border-radius:4px;text-align:right;font-weight:500;color:#333}@media (max-width: 768px){.mpq-form-row{grid-template-columns:1fr}.mpq-header{flex-direction:column;align-items:flex-start;gap:15px}.mpq-question-card{flex-direction:column}.mpq-question-actions{margin-left:0;margin-top:15px;width:100%;flex-direction:row}.mpq-question-actions .mpq-btn{flex:1}.mpq-content{padding:20px}.mpq-container{padding:10px}}.view-responses-container{padding:20px;max-width:1400px;margin:0 auto}.responses-header{display:flex;align-items:flex-start;gap:20px;margin-bottom:30px}.btn-back{padding:10px 16px;border:none;background:var(--primary-accent, #10b981);color:#fff;border-radius:6px;cursor:pointer;font-size:14px;display:flex;align-items:center;gap:8px;transition:background .3s ease;margin-top:0}.btn-back:hover{background:var(--primary-accent-dark, #059669)}.responses-header>div{flex:1}.responses-header .page-title{font-size:24px;font-weight:600;color:#333;margin:0 0 8px}.responses-header .exam-title{font-size:14px;color:#666;margin:0}.alert{padding:12px 16px;border-radius:6px;margin-bottom:20px;display:flex;align-items:center;gap:10px;font-size:14px}.alert-danger{background:#fee;color:#c00;border-left:4px solid #c00}.responses-content{display:grid;grid-template-columns:1fr 350px;gap:20px;align-items:start}.submissions-list{background:#fff;border-radius:8px;padding:20px;box-shadow:0 2px 8px #00000014}.empty-state{text-align:center;padding:60px 20px;color:#999}.empty-state i{font-size:48px;opacity:.3;display:block;margin-bottom:16px}.empty-state p{font-size:16px;margin:0}.table-responsive{overflow-x:auto}.submissions-table{width:100%;border-collapse:collapse;font-size:13px}.submissions-table thead{background:#f8f9fa;border-bottom:2px solid #e9ecef}.submissions-table th{padding:12px;text-align:left;font-weight:600;color:#333;white-space:nowrap}.submissions-table td{padding:12px;border-bottom:1px solid #e9ecef;text-align:left}.submissions-table tbody tr:hover{background:#f8f9fa}.submissions-table tbody tr.selected{background:#e8f5e9}.submissions-table .student-name{font-weight:500;color:#333}.submissions-table .file-badge{display:inline-block;padding:4px 8px;background:var(--primary-accent, #10b981);color:#fff;border-radius:4px;font-size:11px;font-weight:600}.submissions-table .actions-cell{display:flex;gap:6px;justify-content:center}.btn-icon{width:32px;height:32px;border:none;background:#f0f0f0;border-radius:4px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:14px;color:#666;transition:all .2s ease}.btn-icon:hover{background:#e0e0e0;color:#333}.btn-icon.btn-view:hover{background:#d4edda;color:var(--primary-accent, #10b981)}.btn-icon.btn-download:hover{background:#cce5ff;color:#06c}.btn-icon.btn-select:hover{background:#fff3cd;color:#ff6b00}.btn-icon.btn-delete:hover{background:#f8d7da;color:#dc3545}.submission-details{background:#fff;border-radius:8px;box-shadow:0 2px 8px #00000014;overflow:hidden;display:flex;flex-direction:column;max-height:calc(100vh - 200px)}.details-header{display:flex;justify-content:space-between;align-items:center;padding:16px;border-bottom:1px solid #e9ecef;background:#f8f9fa}.details-header h3{font-size:16px;margin:0;color:#333;font-weight:600}.btn-close{background:none;border:none;cursor:pointer;font-size:20px;color:#999;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s ease}.btn-close:hover{background:#e9ecef;color:#333}.details-content{padding:16px;overflow-y:auto;flex:1;display:flex;flex-direction:column;gap:16px}.student-info{background:#f8f9fa;border-radius:4px;padding:12px}.info-row{display:flex;justify-content:space-between;padding:6px 0;font-size:13px;border-bottom:1px solid #e9ecef}.info-row:last-child{border-bottom:none}.info-row label{font-weight:600;color:#666;min-width:100px}.info-row span{color:#333;text-align:right;word-break:break-word;flex:1;margin-left:8px}.form-group{display:flex;flex-direction:column;gap:6px}.form-group label{font-size:13px;font-weight:600;color:#333}.form-input{padding:8px;border:1px solid #e0e0e0;border-radius:4px;font-size:13px;font-family:inherit}.form-input:focus{outline:none;border-color:var(--primary-accent, #10b981);box-shadow:0 0 0 3px #10b9811a}.form-input:disabled{background:#f0f0f0;cursor:not-allowed}.form-textarea{padding:8px;border:1px solid #e0e0e0;border-radius:4px;font-size:13px;font-family:inherit;resize:vertical}.form-textarea:focus{outline:none;border-color:var(--primary-accent, #10b981);box-shadow:0 0 0 3px #10b9811a}.form-textarea:disabled{background:#f0f0f0;cursor:not-allowed}.form-actions{display:flex;flex-direction:column;gap:8px;margin-top:auto}.btn{padding:8px 12px;border:none;border-radius:4px;font-size:13px;font-weight:500;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:6px;transition:all .2s ease}.btn-primary{background:var(--primary-accent, #10b981);color:#fff}.btn-primary:hover:not(:disabled){background:var(--primary-accent-dark, #059669)}.btn-secondary{background:#6c757d;color:#fff}.btn-secondary:hover:not(:disabled){background:#5a6268}.btn:disabled{opacity:.6;cursor:not-allowed}.loading{text-align:center;padding:60px 20px;color:#999}.spinner{width:40px;height:40px;border:4px solid #e0e0e0;border-top-color:var(--primary-accent, #10b981);border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 16px}@media (max-width: 1024px){.responses-content{grid-template-columns:1fr}.submission-details{max-height:400px}}@media (max-width: 768px){.responses-header{flex-direction:column;align-items:stretch}.btn-back{width:100%;justify-content:center}.submissions-table{font-size:12px}.submissions-table th,.submissions-table td{padding:8px}.btn-icon{width:28px;height:28px;font-size:12px}.responses-content{grid-template-columns:1fr}}.pe-container{max-width:900px;margin:0 auto;padding:20px}.pe-content{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;padding:30px}.pe-content h2{color:#333;margin-bottom:25px;font-size:24px}.pe-error{background-color:#fee;border:1px solid #fcc;color:#c33;padding:12px;border-radius:4px;margin-bottom:20px}.pe-success{background-color:#e8f5e9;border:1px solid #c8e6c9;color:#2e7d32;padding:12px;border-radius:4px;margin-bottom:20px}.pe-form{display:flex;flex-direction:column;gap:20px}.pe-form-group{display:flex;flex-direction:column;gap:8px}.pe-form-group label{font-weight:600;color:#333;font-size:14px}.pe-form-group input,.pe-form-group textarea,.pe-form-group select{padding:10px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px;font-family:inherit}.pe-form-group input:focus,.pe-form-group textarea:focus,.pe-form-group select:focus{outline:none;border-color:#4caf50;box-shadow:0 0 0 3px #4caf501a}.pe-form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.pe-divisions{display:flex;flex-direction:column;gap:8px;padding:12px;background-color:#f5f5f5;border-radius:4px}.pe-checkbox{display:flex;align-items:center;gap:8px;cursor:pointer;font-weight:500}.pe-checkbox input[type=checkbox]{width:18px;height:18px;cursor:pointer}.pe-form-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:20px}.pe-btn{padding:10px 20px;border:none;border-radius:4px;cursor:pointer;font-weight:600;font-size:14px;transition:all .3s ease}.pe-btn-primary{background-color:#4caf50;color:#fff}.pe-btn-primary:hover{background-color:#45a049}.pe-btn-secondary{background-color:#f0f0f0;color:#333;border:1px solid #ddd}.pe-btn-secondary:hover{background-color:#e0e0e0}@media (max-width: 768px){.pe-form-row{grid-template-columns:1fr}.pe-content{padding:20px}.pe-container{padding:10px}}.public-exam-container{background:linear-gradient(135deg,#667eea,#764ba2);min-height:100vh;padding:40px 20px;display:flex;align-items:center;justify-content:center;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}.exam-wrapper{background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;max-width:900px;width:100%;overflow:hidden;animation:slideIn .3s ease-out}@keyframes slideIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:100px 40px;text-align:center;background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d}.spinner{width:50px;height:50px;border:5px solid #f3f3f3;border-top:5px solid #667eea;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:20px}.loading-state p{color:#666;font-size:16px}.error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 40px;text-align:center;background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d}.error-icon{width:80px;height:80px;background:#fee;border-radius:50%;display:flex;align-items:center;justify-content:center;margin-bottom:20px;font-size:40px;color:#d32f2f}.error-state h2{color:#d32f2f;margin:0 0 10px;font-size:24px}.error-state p{color:#666;margin:5px 0;font-size:14px}.error-hint{color:#999;font-size:13px;margin-top:10px}.simple-header{padding:30px 40px;border-bottom:2px solid #f0f0f0;background:#fafafa}.course-info{margin:0;display:flex;gap:15px;align-items:center;font-size:16px}.course-code{background:#667eea;color:#fff;padding:8px 16px;border-radius:4px;font-weight:700;font-size:14px}.course-name{color:#333;font-weight:500;font-size:15px}.question-display{padding:40px}.question-content{margin:20px 0 0}.question-text{margin:0;padding:0}.question-text p{font-size:16px;line-height:1.8;color:#333;margin:0;white-space:pre-wrap;word-wrap:break-word}@media (max-width: 600px){.public-exam-container{padding:20px 10px}.exam-wrapper{border-radius:8px}.simple-header{padding:20px}.course-info{flex-direction:column;gap:10px;align-items:flex-start}.question-display{padding:20px}.question-text p{font-size:15px}}.k3-page{padding:20px;background:#f5f6f8;min-height:calc(100vh - 64px)}.k3-form-card{background:#fff;padding:22px;max-width:760px;border-radius:10px;border:1px solid #d9dee5}.k3-form-card h3{margin-bottom:18px;color:#0a8f3f;font-size:1.9rem;font-weight:700}.k3-page-header{background:#0a8f3f;color:#fff;padding:16px 20px;border-radius:8px;margin-bottom:20px}.k3-page-header h2{margin:0 0 6px;font-size:20px}.k3-page-header p{margin:0;opacity:.9}.k3-info{background:#f1f7f2;border:1px solid #c8e6c9;padding:10px 12px;border-radius:6px;margin-bottom:16px;font-size:14px}.k3-label{font-weight:600;font-size:16px;margin-bottom:8px}.k3-submit-btn{min-width:180px}.k3-error{color:#c62828;font-weight:600}.k3-print-container{padding:16px;background:#f5f6f8}.k3-print-toolbar{display:flex;align-items:center;justify-content:space-between;background:#0a8f3f;color:#fff;padding:12px 18px;border-radius:8px;margin-bottom:16px}.k3-toolbar-title{font-weight:700;letter-spacing:.5px;font-size:2rem;font-style:italic}.k3-toolbar-actions{display:flex;gap:10px}.k3-sheet{background:#fff;border:1px solid #444;padding:14px}.k3-sheet-header{display:flex;justify-content:space-between;align-items:flex-start;border-bottom:1px solid #444;padding-bottom:10px;margin-bottom:10px}.k3-sheet-title{text-align:center;flex:1}.k3-sheet-board{font-weight:700;font-size:14px}.k3-sheet-subtitle{font-size:12px;margin-top:4px;font-weight:700}.k3-sheet-format{font-weight:700;font-size:12px;text-align:right}.k3-meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:6px 18px;font-size:12px;margin-bottom:12px}.k3-table{width:100%;border-collapse:collapse;font-size:11px}.k3-table th,.k3-table td{border:1px solid #444;padding:4px 6px;text-align:center;vertical-align:middle}.k3-table thead th{background:#f1f3f5;font-weight:700}.k3-name{text-align:left;padding-left:6px}.k3-empty{text-align:center;padding:16px 0}.k3-signature-row{display:flex;justify-content:space-between;margin-top:18px;font-size:12px}.k3-sign-label{font-size:11px;color:#444}@media print{@page{size:auto;margin:10mm}body{background:#fff;overflow:visible!important}.no-print,.sidebar,.header{display:none!important}.app-container,.main-content-wrapper,.scrollable-content{overflow:visible!important;height:auto!important;margin:0!important;padding:0!important}.k3-print-container{display:block!important;visibility:visible!important;padding:0;background:#fff}.k3-sheet{display:block!important;visibility:visible!important;border:none;padding:0;page-break-inside:avoid}}.main-content{padding:20px;margin-left:0}.card{border:none;box-shadow:0 2px 8px #0000001a;border-radius:8px}.card-header{border-radius:8px 8px 0 0;padding:15px 20px;font-weight:600}.card-body{padding:20px}.alert{border-radius:6px;padding:12px 16px;margin-bottom:20px}.text-muted{color:#6c757d}.msbte-controls{background-color:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:16px}.msbte-preview{border:1px solid #cfd4da;border-radius:6px;background-color:#fff;padding:12px}.msbte-header{border-bottom:1px solid #cfd4da;padding-bottom:8px;margin-bottom:8px;text-align:center;position:relative}.msbte-title{font-weight:700;font-size:.95rem}.msbte-subtitle{font-weight:600;font-size:.85rem}.msbte-format{position:absolute;right:0;top:0;font-weight:600;font-size:.8rem}.msbte-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 16px;font-size:.85rem;margin-bottom:10px}.msbte-table th,.msbte-table td{font-size:.85rem}.table{background-color:#fff;border-collapse:collapse}.table thead{background-color:#f8f9fa;border-bottom:2px solid #dee2e6}.table th{padding:15px;font-weight:600;color:#333;text-align:left;border:1px solid #dee2e6}.table td{padding:12px 15px;border:1px solid #dee2e6;color:#333}.table tbody tr:hover{background-color:#f8f9fa}.form-control{border:1px solid #ced4da;padding:8px 12px;border-radius:4px;font-size:.9rem}.form-control:focus{border-color:#80bdff;box-shadow:0 0 0 .2rem #007bff40;outline:none}.form-control-sm{padding:6px 10px;font-size:.85rem;height:36px}.form-select{border:1px solid #ced4da;padding:8px 12px;border-radius:4px;font-size:.9rem;background-color:#fff}.form-select:focus{border-color:#80bdff;box-shadow:0 0 0 .2rem #007bff40;outline:none}.form-label{color:#333;margin-bottom:8px}.btn{padding:8px 16px;border-radius:4px;font-weight:500;cursor:pointer;transition:all .2s ease;border:none;display:inline-flex;align-items:center;gap:6px}.btn-primary{background-color:#007bff;color:#fff}.btn-primary:hover{background-color:#0056b3;transform:translateY(-1px);box-shadow:0 4px 8px #007bff33}.btn-secondary{background-color:#6c757d;color:#fff}.btn-secondary:hover{background-color:#5a6268}@media (max-width: 768px){.main-content{padding:15px}.card{margin-bottom:15px}.table{font-size:.9rem}.table th,.table td{padding:10px 8px}.table-responsive{overflow-x:auto}}.k4-print-sheet{border:1px solid #333;background:#fff;padding:10px}.k4-print-container{padding:16px;background:#f5f6f8}.k4-print-toolbar{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-bottom:12px}.k4-print-header-row{display:flex;justify-content:space-between;align-items:flex-start;border:1px solid #333;border-bottom:none;padding:6px 10px}.k4-print-title-wrap{flex:1;text-align:center}.k4-print-board,.k4-print-subtitle{font-size:13px;font-weight:700}.k4-print-format{font-size:12px;font-weight:700;white-space:nowrap;margin-left:10px}.k4-print-meta-row{border:1px solid #333;border-top:none;padding:6px 8px;display:flex;justify-content:space-between;gap:12px;font-size:12px}.k4-print-blank{display:inline-block;border-bottom:1px solid #333;min-width:24px}.k4-print-table{width:100%;border-collapse:collapse;table-layout:fixed;margin-bottom:0;border:1px solid #444;font-size:11px}.k4-print-table th,.k4-print-table td{border:1px solid #444!important;font-size:11px;padding:4px 6px;text-align:center;vertical-align:middle;background:#fff}.k4-structure-table{table-layout:fixed;width:100%}.k4-col-roll{width:16%}.k4-col-enroll{width:19%}.k4-col-name{width:28%}.k4-col-seat{width:12%}.k4-col-marks{width:25%}.k4-sheet-title-cell{padding:4px 8px!important}.k4-sheet-title-inner{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.k4-meta-left,.k4-meta-right,.k4-meta-center{font-size:11px!important;font-weight:600;text-align:left!important;padding:4px 8px!important}.k4-meta-right{text-align:right!important}.k4-meta-center{text-align:center!important}.k4-print-signatures{border:1px solid #333;border-top:none;display:grid;grid-template-columns:1fr 1fr;min-height:110px}.k4-sign-column{padding:8px;font-size:12px}.k4-sign-title{font-weight:700;margin-bottom:6px}.k4-print-table thead th{background:#f1f3f5!important;font-weight:700}.k4-print-table td.text-start{text-align:left!important;padding-left:6px!important}@media print{@page{size:auto;margin:10mm}.k4-print-toolbar,.main-content>.btn,.main-content>h3,.main-content>.mt-4,.sidebar,.header,.navbar,.no-print{display:none!important}.main-content{margin:0!important;padding:0!important}.k4-print-container,.k4-print-sheet{background:#fff!important;padding:0!important;margin:0!important}.k4-print-sheet{border:1px solid #000;box-shadow:none}.k4-print-table{display:table!important;width:100%!important;table-layout:fixed!important;border-collapse:collapse!important;border:1px solid #444!important}.k4-print-table thead{display:table-header-group!important}.k4-print-table tbody{display:table-row-group!important}.k4-print-table tr{display:table-row!important;page-break-inside:avoid!important;break-inside:avoid!important;background:#fff!important}.k4-print-table th,.k4-print-table td{display:table-cell!important;float:none!important;width:auto!important;min-width:0!important;max-width:none!important;border:1px solid #444!important;border-top:1px solid #444!important;border-bottom:1px solid #444!important;border-left:1px solid #444!important;border-right:1px solid #444!important;white-space:normal!important;word-break:break-word!important}.k4-print-table tbody tr td{border-top:1px solid #444!important;border-bottom:1px solid #444!important}.k4-print-table tbody tr+tr td{border-top:1px solid #444!important}.k4-print-table thead th{background:#f1f3f5!important;font-weight:700!important}.k4-print-table tbody td{background:#fff!important}.k4-print-table td.text-start{text-align:left!important;padding-left:6px!important}.k4-print-table td:before,.k4-print-table th:before{content:none!important;display:none!important}}.k5-page{padding:16px;background:#f5f6f8;min-height:calc(100vh - 64px)}.k5-card{background:#fff;border:1px solid #d9dee5;border-radius:8px;padding:20px;max-width:720px}.k5-error{color:#c62828;font-weight:600}.k5-toolbar{display:flex;justify-content:flex-end;gap:10px;margin-bottom:12px}.k5-sheet{background:#fff;border:1px solid #444;overflow-x:auto}.k5-table{width:100%;border-collapse:collapse;min-width:980px}.k5-table th,.k5-table td{border:1px solid #444;font-size:12px;padding:4px 6px;text-align:center;vertical-align:middle}.k5-title-cell{position:relative;text-align:center;padding:8px 10px!important}.k5-title-top{font-weight:700;font-size:13px}.k5-title-sub{font-weight:700;font-size:12px}.k5-format{position:absolute;top:8px;right:10px;font-weight:700;font-size:12px}.k5-meta-left,.k5-meta-right{text-align:left;padding:6px 8px!important}.k5-meta-right{text-align:right}.k5-name{text-align:left}.k5-empty{text-align:center;padding:16px 8px!important}.k5-signatures{border-top:1px solid #444;display:flex;justify-content:space-between;padding:10px 14px;font-size:13px;min-height:78px}@media print{.no-print,.sidebar,.header,.navbar{display:none!important}.k5-page{background:#fff;padding:0}.k5-sheet{border:1px solid #000}}.student-timetable-manager{--stm-accent: var(--primary-accent, #10b981);--stm-accent-strong: var(--primary-accent-dark, #059669);--stm-accent-header: var(--app-header-bg, var(--primary-accent, #10b981));--stm-bg-a: color-mix(in srgb, var(--stm-accent) 12%, #ffffff 88%);--stm-bg-b: color-mix(in srgb, var(--stm-accent) 18%, #ffffff 82%);--stm-card: #ffffff;--stm-border: color-mix(in srgb, var(--stm-accent) 28%, #d7dee8 72%);--stm-text: #0f2f2a;--stm-muted: color-mix(in srgb, var(--stm-accent-strong) 46%, #64748b 54%);--stm-primary: var(--stm-accent);--stm-primary-deep: var(--stm-accent-strong);display:flex;flex-direction:column;gap:1rem;min-height:calc(100vh - 64px);padding:1.25rem;color:var(--stm-text);background:radial-gradient(circle at 8% 8%,color-mix(in srgb,var(--stm-accent) 25%,transparent),transparent 38%),radial-gradient(circle at 92% 2%,color-mix(in srgb,var(--stm-accent-strong) 20%,transparent),transparent 34%),linear-gradient(180deg,var(--stm-bg-a),var(--stm-bg-b))}.stm-hero,.stm-alert,.stm-form,.stm-list{max-width:1180px;width:100%;margin-left:auto;margin-right:auto}.stm-hero{border:1px solid var(--stm-border);border-radius:18px;background:linear-gradient(130deg,var(--stm-accent-header),var(--stm-primary) 58%,var(--stm-primary-deep));box-shadow:0 16px 30px color-mix(in srgb,var(--stm-primary-deep) 34%,transparent);padding:1rem 1.1rem;display:flex;justify-content:space-between;gap:1rem;align-items:flex-start}.stm-hero-copy h1{margin:0;font-size:1.55rem;font-weight:800;color:#f7fbff}.stm-hero-copy p{margin:.35rem 0 0;color:#eef6ffe6;max-width:720px}.stm-hero-stats{display:grid;grid-template-columns:repeat(3,minmax(90px,1fr));gap:.55rem}.stm-hero-stats>div{border:1px solid rgba(207,225,251,.34);border-radius:12px;background:#ffffff24;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);padding:.45rem .58rem}.stm-hero-stats span{display:block;margin-bottom:.1rem;color:#e2edffe6;font-size:.72rem;text-transform:uppercase;letter-spacing:.03em;font-weight:700}.stm-hero-stats strong{color:#fff;font-size:1.1rem}.stm-alert{border-radius:10px;padding:.7rem .85rem}.stm-alert.error{background:#fff1f2;border:1px solid #fecdd3;color:#be123c}.stm-alert.success{background:#ecfdf5;border:1px solid #bbf7d0;color:#166534}.stm-form,.stm-list{border:1px solid var(--stm-border);border-radius:16px;background:linear-gradient(180deg,#fff,color-mix(in srgb,var(--stm-accent) 5%,#ffffff 95%));padding:1rem;box-shadow:0 12px 24px color-mix(in srgb,var(--stm-primary-deep) 12%,transparent)}.stm-form-head{margin-bottom:.8rem}.stm-form-head h2{margin:0;font-size:1.12rem;color:color-mix(in srgb,var(--stm-primary-deep) 60%,#0f172a 40%);font-weight:800}.stm-form-head p{margin:.3rem 0 0;color:var(--stm-muted);font-size:.9rem}.stm-form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:.75rem}.stm-field{display:flex;flex-direction:column;gap:.3rem}.stm-field>span{color:var(--stm-muted);font-size:.79rem;text-transform:uppercase;letter-spacing:.03em;font-weight:700}.stm-field input,.stm-field select{min-height:42px;border:1px solid color-mix(in srgb,var(--stm-accent) 24%,#d7dee8 76%);border-radius:10px;padding:0 .75rem;color:var(--stm-text);font-size:.94rem}.stm-field input:focus,.stm-field select:focus{outline:none;border-color:color-mix(in srgb,var(--stm-accent) 55%,#ffffff 45%);box-shadow:0 0 0 .2rem color-mix(in srgb,var(--stm-accent) 22%,transparent)}.stm-upload-block{margin-top:.8rem;border:1px dashed color-mix(in srgb,var(--stm-accent) 46%,#d7dee8 54%);border-radius:12px;background:linear-gradient(145deg,color-mix(in srgb,var(--stm-accent) 10%,#ffffff 90%),#fff);padding:.75rem;display:flex;align-items:center;justify-content:space-between;gap:.8rem;flex-wrap:wrap}.stm-upload-block h3{margin:0;color:color-mix(in srgb,var(--stm-primary-deep) 62%,#0f172a 38%);font-size:.95rem;font-weight:800}.stm-upload-block p{margin:.22rem 0 0;color:var(--stm-muted);font-size:.84rem}.stm-file-label{position:relative;display:inline-flex;align-items:center}.stm-file-label input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer}.stm-file-label span{min-height:42px;border:1px solid color-mix(in srgb,var(--stm-accent) 38%,#d7dee8 62%);border-radius:10px;background:linear-gradient(135deg,#fff,color-mix(in srgb,var(--stm-accent) 11%,#ffffff 89%));color:color-mix(in srgb,var(--stm-primary-deep) 62%,#0f172a 38%);padding:0 .85rem;display:inline-flex;align-items:center;font-size:.88rem;font-weight:600}.stm-actions-row{margin-top:.85rem;display:flex;justify-content:flex-end}.stm-actions-row button,.stm-list-head button,.stm-card-actions button{border:1px solid transparent;border-radius:10px;min-height:42px;padding:0 .95rem;font-size:.9rem;font-weight:700;cursor:pointer;transition:transform .16s ease,filter .2s ease}.stm-actions-row button,.stm-list-head button{color:#fff;background:linear-gradient(135deg,var(--stm-primary),var(--stm-primary-deep));box-shadow:0 12px 20px color-mix(in srgb,var(--stm-primary-deep) 30%,transparent)}.stm-actions-row button:hover,.stm-list-head button:hover,.stm-card-actions button:hover{transform:translateY(-1px);filter:brightness(.98)}.stm-list-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.stm-list-head h2{margin:0;color:color-mix(in srgb,var(--stm-primary-deep) 62%,#0f172a 38%);font-size:1.12rem;font-weight:800}.stm-empty-state,.empty-state{margin:0;color:var(--stm-muted);font-size:.92rem}.stm-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:.75rem}.stm-card{border:1px solid color-mix(in srgb,var(--stm-accent) 30%,#d7dee8 70%);border-radius:14px;padding:.8rem;background:linear-gradient(130deg,#fff,color-mix(in srgb,var(--stm-accent) 8%,#ffffff 92%) 74%,color-mix(in srgb,var(--stm-accent) 14%,#ffffff 86%));box-shadow:0 10px 22px color-mix(in srgb,var(--stm-primary-deep) 14%,transparent)}.stm-card-meta{display:flex;gap:.4rem;margin-bottom:.45rem;flex-wrap:wrap}.stm-card-meta span{background:color-mix(in srgb,var(--stm-accent) 18%,#ffffff 82%);color:color-mix(in srgb,var(--stm-primary-deep) 72%,#0f172a 28%);border:1px solid color-mix(in srgb,var(--stm-accent) 40%,#d7dee8 60%);border-radius:999px;padding:.12rem .52rem;font-size:.74rem;font-weight:700}.stm-card h3{margin:0 0 .35rem;font-size:1.01rem;color:color-mix(in srgb,var(--stm-primary-deep) 62%,#0f172a 38%);font-weight:800}.stm-card p{margin:0 0 .34rem;color:var(--stm-muted);font-size:.88rem}.stm-card-actions{margin-top:.6rem;display:flex;gap:.45rem;flex-wrap:wrap}.stm-secondary{color:color-mix(in srgb,var(--stm-primary-deep) 74%,#0f172a 26%);background:linear-gradient(135deg,color-mix(in srgb,var(--stm-accent) 14%,#ffffff 86%),color-mix(in srgb,var(--stm-accent) 21%,#ffffff 79%));border:1px solid color-mix(in srgb,var(--stm-accent) 42%,#d7dee8 58%)}.stm-danger{color:#fff;background:linear-gradient(135deg,#e94a58,#c82635);border:1px solid #b81f2d}@media (max-width: 980px){.stm-hero{flex-direction:column}.stm-hero-stats{width:100%;grid-template-columns:repeat(3,minmax(0,1fr))}.stm-upload-block{align-items:flex-start}.stm-actions-row{justify-content:stretch}.stm-actions-row button{width:100%}}@media (max-width: 700px){.student-timetable-manager{padding:.9rem}.stm-hero-stats,.stm-form-grid,.stm-cards{grid-template-columns:1fr}.stm-list-head{flex-direction:column;align-items:stretch;gap:.45rem}.stm-list-head button{width:100%}}.faculty-study-material-manager{--fsm-accent: var(--primary-accent, #10b981);--fsm-accent-strong: var(--primary-accent-dark, #059669);--fsm-accent-header: var(--app-header-bg, var(--primary-accent, #10b981));--fsm-bg-a: color-mix(in srgb, var(--fsm-accent) 12%, #ffffff 88%);--fsm-bg-b: color-mix(in srgb, var(--fsm-accent) 18%, #ffffff 82%);--fsm-border: color-mix(in srgb, var(--fsm-accent) 28%, #d7dee8 72%);--fsm-text: #0f2f2a;--fsm-muted: color-mix(in srgb, var(--fsm-accent-strong) 46%, #64748b 54%);display:flex;flex-direction:column;gap:1rem;min-height:calc(100vh - 64px);padding:1.25rem;color:var(--fsm-text);background:radial-gradient(circle at 8% 8%,color-mix(in srgb,var(--fsm-accent) 25%,transparent),transparent 38%),radial-gradient(circle at 92% 2%,color-mix(in srgb,var(--fsm-accent-strong) 20%,transparent),transparent 34%),linear-gradient(180deg,var(--fsm-bg-a),var(--fsm-bg-b))}.fsm-hero,.fsm-alert,.fsm-form,.fsm-list{max-width:1180px;width:100%;margin-left:auto;margin-right:auto}.fsm-hero{border:1px solid var(--fsm-border);border-radius:18px;background:linear-gradient(130deg,var(--fsm-accent-header),var(--fsm-accent) 58%,var(--fsm-accent-strong));box-shadow:0 16px 30px color-mix(in srgb,var(--fsm-accent-strong) 34%,transparent);padding:1rem 1.1rem;display:flex;justify-content:space-between;gap:1rem;align-items:flex-start}.fsm-hero-copy h1{margin:0;font-size:1.55rem;font-weight:800;color:#f7fbff}.fsm-hero-copy p{margin:.35rem 0 0;color:#eef6ffe6;max-width:720px}.fsm-hero-stats{display:grid;grid-template-columns:repeat(3,minmax(90px,1fr));gap:.55rem}.fsm-hero-stats>div{border:1px solid rgba(207,225,251,.34);border-radius:12px;background:#ffffff24;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);padding:.45rem .58rem}.fsm-hero-stats span{display:block;margin-bottom:.1rem;color:#e2edffe6;font-size:.72rem;text-transform:uppercase;letter-spacing:.03em;font-weight:700}.fsm-hero-stats strong{color:#fff;font-size:1.1rem}.fsm-alert{border-radius:10px;padding:.7rem .85rem}.fsm-alert.error{background:#fff1f2;border:1px solid #fecdd3;color:#be123c}.fsm-alert.success{background:#ecfdf5;border:1px solid #bbf7d0;color:#166534}.fsm-form,.fsm-list{border:1px solid var(--fsm-border);border-radius:16px;background:linear-gradient(180deg,#fff,color-mix(in srgb,var(--fsm-accent) 5%,#ffffff 95%));padding:1rem;box-shadow:0 12px 24px color-mix(in srgb,var(--fsm-accent-strong) 12%,transparent)}.fsm-form-head{margin-bottom:.8rem}.fsm-form-head h2{margin:0;font-size:1.12rem;color:color-mix(in srgb,var(--fsm-accent-strong) 60%,#0f172a 40%);font-weight:800}.fsm-form-head p{margin:.3rem 0 0;color:var(--fsm-muted);font-size:.9rem}.fsm-form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:.75rem}.fsm-field{display:flex;flex-direction:column;gap:.3rem}.fsm-field-wide{grid-column:1 / -1}.fsm-field>span{color:var(--fsm-muted);font-size:.79rem;text-transform:uppercase;letter-spacing:.03em;font-weight:700}.fsm-field input,.fsm-field select,.fsm-field textarea{min-height:42px;border:1px solid color-mix(in srgb,var(--fsm-accent) 24%,#d7dee8 76%);border-radius:10px;padding:.55rem .75rem;color:var(--fsm-text);font-size:.94rem;background:#fff}.fsm-field textarea{min-height:88px;resize:vertical}.fsm-field input:focus,.fsm-field select:focus,.fsm-field textarea:focus{outline:none;border-color:color-mix(in srgb,var(--fsm-accent) 55%,#ffffff 45%);box-shadow:0 0 0 .2rem color-mix(in srgb,var(--fsm-accent) 22%,transparent)}.fsm-upload-block{margin-top:.8rem;border:1px dashed color-mix(in srgb,var(--fsm-accent) 46%,#d7dee8 54%);border-radius:12px;background:linear-gradient(145deg,color-mix(in srgb,var(--fsm-accent) 10%,#ffffff 90%),#fff);padding:.75rem;display:flex;align-items:center;justify-content:space-between;gap:.8rem;flex-wrap:wrap}.fsm-link-block{justify-content:flex-start}.fsm-upload-block h3{margin:0;color:color-mix(in srgb,var(--fsm-accent-strong) 62%,#0f172a 38%);font-size:.95rem;font-weight:800}.fsm-upload-block p{margin:.22rem 0 0;color:var(--fsm-muted);font-size:.84rem}.fsm-file-label{position:relative;display:inline-flex;align-items:center}.fsm-file-label input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer}.fsm-file-label span{min-height:42px;border:1px solid color-mix(in srgb,var(--fsm-accent) 38%,#d7dee8 62%);border-radius:10px;background:linear-gradient(135deg,#fff,color-mix(in srgb,var(--fsm-accent) 11%,#ffffff 89%));color:color-mix(in srgb,var(--fsm-accent-strong) 62%,#0f172a 38%);padding:0 .85rem;display:inline-flex;align-items:center;font-size:.88rem;font-weight:600;max-width:min(360px,72vw);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fsm-actions-row{margin-top:.85rem;display:flex;justify-content:flex-end}.fsm-actions-row button,.fsm-list-head button,.fsm-card-actions button{border:1px solid transparent;border-radius:10px;min-height:42px;padding:0 .95rem;font-size:.9rem;font-weight:700;cursor:pointer;transition:transform .16s ease,filter .2s ease}.fsm-actions-row button,.fsm-list-head button{color:#fff;background:linear-gradient(135deg,var(--fsm-accent),var(--fsm-accent-strong));box-shadow:0 12px 20px color-mix(in srgb,var(--fsm-accent-strong) 30%,transparent)}.fsm-actions-row button:hover,.fsm-list-head button:hover,.fsm-card-actions button:hover{transform:translateY(-1px);filter:brightness(.98)}.fsm-list-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.fsm-list-head h2{margin:0;color:color-mix(in srgb,var(--fsm-accent-strong) 62%,#0f172a 38%);font-size:1.12rem;font-weight:800}.fsm-empty-state{margin:0;color:var(--fsm-muted);font-size:.92rem}.fsm-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:.75rem}.fsm-card{border:1px solid color-mix(in srgb,var(--fsm-accent) 30%,#d7dee8 70%);border-radius:14px;padding:.8rem;background:linear-gradient(130deg,#fff,color-mix(in srgb,var(--fsm-accent) 8%,#ffffff 92%) 74%,color-mix(in srgb,var(--fsm-accent) 14%,#ffffff 86%));box-shadow:0 10px 22px color-mix(in srgb,var(--fsm-accent-strong) 14%,transparent)}.fsm-card-meta{display:flex;gap:.4rem;margin-bottom:.45rem;flex-wrap:wrap}.fsm-card-meta span{background:color-mix(in srgb,var(--fsm-accent) 18%,#ffffff 82%);color:color-mix(in srgb,var(--fsm-accent-strong) 72%,#0f172a 28%);border:1px solid color-mix(in srgb,var(--fsm-accent) 40%,#d7dee8 60%);border-radius:999px;padding:.12rem .52rem;font-size:.74rem;font-weight:700}.fsm-card h3{margin:0 0 .35rem;font-size:1.01rem;color:color-mix(in srgb,var(--fsm-accent-strong) 62%,#0f172a 38%);font-weight:800}.fsm-card p{margin:0 0 .34rem;color:var(--fsm-muted);font-size:.88rem}.fsm-card-actions{margin-top:.6rem;display:flex;gap:.45rem;flex-wrap:wrap}.fsm-secondary{color:color-mix(in srgb,var(--fsm-accent-strong) 74%,#0f172a 26%);background:linear-gradient(135deg,color-mix(in srgb,var(--fsm-accent) 14%,#ffffff 86%),color-mix(in srgb,var(--fsm-accent) 21%,#ffffff 79%));border:1px solid color-mix(in srgb,var(--fsm-accent) 42%,#d7dee8 58%)}.fsm-danger{color:#fff;background:linear-gradient(135deg,#e94a58,#c82635);border:1px solid #b81f2d}@media (max-width: 980px){.fsm-hero{flex-direction:column}.fsm-hero-stats{width:100%;grid-template-columns:repeat(3,minmax(0,1fr))}.fsm-upload-block{align-items:flex-start}.fsm-actions-row{justify-content:stretch}.fsm-actions-row button{width:100%}}@media (max-width: 700px){.faculty-study-material-manager{padding:.9rem}.fsm-hero-stats,.fsm-form-grid,.fsm-cards{grid-template-columns:1fr}.fsm-list-head{flex-direction:column;align-items:stretch;gap:.45rem}.fsm-list-head button{width:100%}}.chapter-selection-group{display:flex;flex-direction:column;gap:.4rem}.chapter-mode-toggle{display:flex;gap:1rem;margin-bottom:.2rem}.chapter-mode-toggle label{display:flex;align-items:center;gap:.25rem;font-size:.8rem;font-weight:600;cursor:pointer;color:var(--fsm-muted)}.custom-chapter-inputs{display:grid;grid-template-columns:80px 1fr;gap:.5rem}.drag-drop-zone{border:2px dashed var(--fsm-accent)!important;transition:all .2s ease-in-out;padding:1.5rem!important;background:color-mix(in srgb,var(--fsm-accent) 4%,#ffffff 96%)!important}.drag-drop-zone.drag-over{background:color-mix(in srgb,var(--fsm-accent) 15%,#ffffff 85%)!important;transform:scale(1.01)}.dropzone-text h3{font-size:1.05rem;margin-bottom:.2rem}.pdf-thumbnail-preview{display:flex;align-items:center;gap:.8rem;background:#fff;border:1px solid var(--fsm-border);padding:.4rem;border-radius:8px}.pdf-thumbnail-preview img{width:44px;height:56px;object-fit:cover;border-radius:4px;border:1px solid #d7dee8}.pdf-thumbnail-preview span{font-size:.76rem;color:var(--fsm-accent-strong);font-weight:700}.rich-text-editor-container textarea{font-family:Courier New,Courier,monospace;font-size:.9rem}.bulk-upload-manager-panel{grid-column:1 / -1;background:#fff;border:1px solid var(--fsm-border);border-radius:12px;padding:1rem;margin-top:.5rem;box-shadow:inset 0 2px 4px #00000005}.bulk-upload-manager-panel h3{margin:0 0 .2rem;font-size:1rem;color:var(--fsm-accent-strong)}.bulk-upload-manager-panel p{margin:0 0 1rem;font-size:.82rem;color:var(--fsm-muted)}.bulk-table-container{overflow-x:auto}.bulk-table{width:100%;border-collapse:collapse;font-size:.86rem}.bulk-table th,.bulk-table td{padding:.6rem .8rem;text-align:left;border-bottom:1px solid var(--fsm-border)}.bulk-table th{background:var(--fsm-bg-a);font-weight:700;color:var(--fsm-accent-strong)}.file-name-cell{font-weight:600;max-width:300px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bulk-table select{padding:4px 8px;border-radius:6px;border:1px solid var(--fsm-border);font-size:.82rem}.remove-queue-btn{background:#fff1f2!important;color:#be123c!important;border:1px solid #fecdd3!important;padding:4px 10px!important;border-radius:6px!important;font-size:.78rem!important;min-height:auto!important;font-weight:600!important}.remove-queue-btn:hover{background:#ffe4e6!important}.bulk-progress-badge{display:inline-flex;align-items:center;gap:.4rem;background:#f0fdf4;border:1px solid #bbf7d0;color:#166534;padding:6px 12px;border-radius:8px;margin-top:1rem;font-weight:600;font-size:.82rem}.fsm-draft-row{grid-column:1 / -1;margin-top:.5rem}.fsm-checkbox-label{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-size:.88rem;font-weight:600;color:var(--fsm-muted)}.fsm-checkbox-label input{width:18px;height:18px;cursor:pointer;accent-color:var(--fsm-accent)}.draft-glow{border-color:#fca5a5!important;background:linear-gradient(130deg,#fff,#fff5f5)!important}.draft-badge-lbl{background:#fee2e2!important;color:#ef4444!important;border-color:#fca5a5!important}.card-tag{font-size:.7rem;font-weight:600;color:var(--fsm-accent-strong);margin-right:.35rem}.card-tags-list{display:flex;flex-wrap:wrap}.fsm-card-footer-row{display:flex;justify-content:space-between;align-items:center;margin-top:.4rem;font-size:.78rem;color:var(--fsm-muted)}.pub-date-lbl{font-size:.75rem}.whatsapp-bot-container{padding:2.5rem;max-width:900px;margin:0 auto;font-family:Inter,system-ui,-apple-system,sans-serif;color:#1e293b}.whatsapp-header-banner{margin-bottom:2rem}.whatsapp-title{font-size:2rem;font-weight:700;background:linear-gradient(135deg,#128c7e,#25d366);-webkit-background-clip:text;-webkit-text-fill-color:transparent;margin-bottom:.5rem}.whatsapp-subtitle{font-size:1rem;color:#64748b}.whatsapp-error-alert{display:flex;align-items:center;gap:.75rem;background-color:#fef2f2;border:1px solid #fee2e2;color:#991b1b;padding:1rem 1.5rem;border-radius:12px;margin-bottom:1.5rem;font-size:.95rem;box-shadow:0 4px 6px -1px #0000000d}.alert-icon{font-size:1.2rem}.whatsapp-glass-card{background:#ffffffbf;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.4);border-radius:24px;box-shadow:0 20px 40px #0000000a;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease}.whatsapp-glass-card:hover{transform:translateY(-2px);box-shadow:0 24px 48px #0000000f}.card-glass-header{display:flex;justify-content:space-between;align-items:center;padding:2rem;border-bottom:1px solid rgba(0,0,0,.05);background:#fff6}.bot-identity{display:flex;align-items:center;gap:1.25rem}.bot-avatar{width:48px;height:48px;border-radius:14px;background:linear-gradient(135deg,#128c7e,#25d366);color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.5rem;box-shadow:0 8px 16px #25d36633}.bot-identity h3{font-size:1.25rem;font-weight:600;margin:0 0 .25rem;color:#0f172a}.tenant-id-label{font-size:.85rem;color:#64748b;margin:0}.status-badge{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-radius:9999px;font-size:.8rem;font-weight:700;letter-spacing:.05em;box-shadow:0 4px 6px -1px #0000000d}.status-badge.disconnected{background-color:#f1f5f9;color:#64748b}.status-badge.loading{background-color:#fef3c7;color:#d97706}.status-badge.qr{background-color:#dbeafe;color:#2563eb}.status-badge.connected{background-color:#dcfce7;color:#15803d}.pulse-dot{width:8px;height:8px;border-radius:50%;background-color:currentColor;display:inline-block}.status-badge.connected .pulse-dot{animation:pulse-animation 1.5s infinite}@keyframes pulse-animation{0%{transform:scale(.9);opacity:1}50%{transform:scale(1.3);opacity:.4}to{transform:scale(.9);opacity:1}}.card-glass-body{padding:2.5rem;background:#fff3}.state-view{display:flex;flex-direction:column;align-items:center;text-align:center;justify-content:center;animation:fade-in .4s ease-out}@keyframes fade-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.view-description{font-size:1rem;color:#475569;max-width:480px;margin-bottom:2rem;line-height:1.6}.big-icon-circle{width:96px;height:96px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:3rem;margin-bottom:1.5rem}.disconnected-icon{background:#f1f5f9;color:#64748b;border:1px solid #e2e8f0}.connected-icon{background:#dcfce7;color:#25d366;border:1px solid #bbf7d0;box-shadow:0 10px 25px #25d36626}.animate-pulse{animation:pulse-shadow 2s infinite}@keyframes pulse-shadow{0%{box-shadow:0 0 #25d36666}70%{box-shadow:0 0 0 20px #25d36600}to{box-shadow:0 0 #25d36600}}.phone-display-badge{display:inline-flex;align-items:center;gap:.5rem;background-color:#f8fafc;border:1px solid #e2e8f0;padding:.6rem 1.2rem;border-radius:12px;font-size:.95rem;margin-bottom:1rem;color:#334155}.loader-spinner{width:48px;height:48px;border:4px solid #f1f5f9;border-top-color:#25d366;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1.5rem}.loading-view p{font-weight:500;font-size:1.1rem;color:#334155;margin-bottom:.25rem}.sub-hint{font-size:.85rem;color:#94a3b8}.premium-btn{display:inline-flex;align-items:center;justify-content:center;gap:.75rem;padding:.85rem 2rem;border-radius:14px;font-size:1rem;font-weight:600;border:none;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 12px #0000000d}.btn-icon{font-size:1.1rem}.connect-btn{background:linear-gradient(135deg,#128c7e,#25d366);color:#fff}.connect-btn:hover{transform:translateY(-1px);box-shadow:0 8px 20px #25d3664d;filter:brightness(1.05)}.disconnect-btn{background-color:#ef4444;color:#fff}.disconnect-btn:hover{background-color:#dc2626;transform:translateY(-1px);box-shadow:0 8px 20px #ef444433}.reset-btn{background-color:#f1f5f9;color:#475569;border:1px solid #cbd5e1}.reset-btn:hover{background-color:#e2e8f0}.secondary-reset-btn{background-color:transparent;color:#64748b;border:1px solid #cbd5e1;box-shadow:none}.secondary-reset-btn:hover{background-color:#f1f5f9;color:#334155}.action-buttons-group{display:flex;gap:1rem;flex-wrap:wrap;justify-content:center;margin-top:1rem}.qr-code-wrapper{background:#fff;padding:1.5rem;border-radius:20px;box-shadow:0 8px 24px #0000000a;border:1px solid rgba(0,0,0,.04);margin-bottom:2rem;display:flex;align-items:center;justify-content:center}.qr-image{width:256px;height:256px;display:block}.qr-placeholder{width:256px;height:256px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#64748b;font-size:.9rem}.qr-placeholder .loader-spinner{width:36px;height:36px;margin-bottom:1rem}.instructions-box{background:#25d3660a;border:1px dashed rgba(37,211,102,.2);border-radius:16px;padding:1.5rem;text-align:left;max-width:480px;margin-bottom:2rem;width:100%}.instructions-box h5{font-weight:700;font-size:.95rem;color:#128c7e;margin-top:0;margin-bottom:.75rem}.instructions-box ol{margin:0;padding-left:1.2rem;color:#334155;font-size:.9rem}.instructions-box li{margin-bottom:.5rem}.instructions-box li:last-child{margin-bottom:0}.qr-footer-actions{display:flex;justify-content:center}@media (max-width: 600px){.whatsapp-bot-container{padding:1rem}.card-glass-header{flex-direction:column;align-items:flex-start;gap:1rem;padding:1.5rem}.card-glass-body{padding:1.5rem}.action-buttons-group{flex-direction:column;width:100%}.premium-btn{width:100%}}.ct-dashboard-page{--ct-bg-start: #f4f8ff;--ct-bg-end: #f9fbff;--ct-panel: #ffffff;--ct-border: #dbe6f6;--ct-primary: #0f5cc0;--ct-primary-strong: #0b4a9a;--ct-text: #12243d;--ct-muted: #5d6d85;min-height:calc(100vh - 64px);padding:1.25rem;background:radial-gradient(circle at 10% 10%,rgba(15,92,192,.12),transparent 40%),radial-gradient(circle at 90% 0%,rgba(11,74,154,.12),transparent 35%),linear-gradient(180deg,var(--ct-bg-start),var(--ct-bg-end))}.ct-dashboard-topbar{display:flex;align-items:center;gap:.75rem;margin:0 auto 1rem;max-width:1180px;padding:1rem 1.1rem;border-radius:16px;border:1px solid var(--ct-border);background:linear-gradient(135deg,#fff,#f2f7ff)}.ct-btn-back{border-radius:999px;border:1px solid #c8d7f0;background:#fff;color:var(--ct-text);font-weight:600}.ct-btn-back:hover{border-color:#adc5e7;background:#f6faff}.ct-dashboard-title{margin:0;font-size:1.15rem;font-weight:700;color:var(--ct-text)}.ct-dashboard-badge{margin-left:auto;display:inline-flex;align-items:center;padding:.35rem .7rem;border-radius:999px;font-size:.8rem;font-weight:700;color:var(--ct-primary-strong);background:#eaf2ff;border:1px solid #cadeff}.ct-dashboard-panel{max-width:1180px;margin:0 auto 1rem;background:var(--ct-panel);border:1px solid var(--ct-border);border-radius:16px;padding:1rem;box-shadow:0 10px 24px #112c520f}.ct-controls-row{display:grid;grid-template-columns:190px 190px minmax(220px,1fr);gap:.9rem;align-items:end}.ct-field .form-label{margin-bottom:.35rem;color:var(--ct-muted);font-size:.84rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em}.ct-field .form-control,.ct-field .form-select,.ct-table .form-control{border-radius:10px;border-color:#cbd8ec;font-size:.95rem}.ct-field .form-control:focus,.ct-field .form-select:focus,.ct-table .form-control:focus{border-color:#9fbbdf;box-shadow:0 0 0 .2rem #0f5cc024}.ct-save-btn{justify-self:end;height:44px;min-width:220px;border:1px solid rgba(9,64,136,.45);border-radius:12px;background:linear-gradient(135deg,#0f5cc0,#0b4a9a 58%,#093a78);color:#fff;font-weight:800;letter-spacing:.01em;box-shadow:0 10px 24px #0b4a9a5c,0 0 0 3px #0f5cc029;animation:ct-save-pulse 1.8s ease-in-out infinite}.ct-save-btn:hover:not(:disabled){transform:translateY(-1px);filter:brightness(1.06)}.ct-save-btn:disabled{opacity:.72;animation:none;transform:none}.ct-save-btn:focus-visible{outline:3px solid rgba(15,92,192,.35);outline-offset:2px}@keyframes ct-save-pulse{0%{box-shadow:0 10px 24px #0b4a9a52,0 0 #0f5cc03d}70%{box-shadow:0 12px 26px #0b4a9a6b,0 0 0 8px #0f5cc000}to{box-shadow:0 10px 24px #0b4a9a52,0 0 #0f5cc000}}.ct-table-wrap{overflow:auto}.ct-table-caption{display:flex;justify-content:space-between;gap:.7rem;margin-bottom:.7rem;color:var(--ct-muted);font-size:.86rem;font-weight:600}.ct-table{margin-bottom:0}.ct-table thead th{position:sticky;top:0;z-index:2;background:#edf4ff;color:#234269;font-size:.84rem;text-transform:uppercase;letter-spacing:.03em}.ct-table tbody td{vertical-align:middle}.ct-table tbody tr:hover{background:#f8fbff}@media (max-width: 900px){.ct-controls-row{grid-template-columns:1fr}.ct-save-btn{justify-self:stretch;min-width:0}.ct-dashboard-badge{margin-left:0}.ct-dashboard-topbar{flex-wrap:wrap}}.ct-table{width:100%;margin-bottom:0}.ct-table th,.ct-table td{vertical-align:middle}.ct-table input.form-control{min-width:120px}@media (max-width: 768px){.ct-dashboard-page{padding:10px 10px 72px}.ct-dashboard-topbar{flex-direction:column;align-items:flex-start}.ct-dashboard-title{font-size:1.15rem}.ct-save-btn,.ct-field{width:100%}}.ct-stats-summary-bar{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.25rem;margin-bottom:2rem}.ct-stat-card{display:flex;align-items:center;gap:1rem;padding:1.25rem 1.5rem;background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 6px -1px #0000000d,0 2px 4px -1px #00000008;transition:transform .2s ease,box-shadow .2s ease}.ct-stat-card:hover{transform:translateY(-2px);box-shadow:0 10px 15px -3px #00000014,0 4px 6px -2px #0000000a}.ct-stat-icon{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:12px;font-size:1.5rem;background:#f8fafc;flex-shrink:0}.ct-stat-icon.text-primary{background:#eff6ff;color:#1d4ed8!important}.ct-stat-icon.text-success{background:#f0fdf4;color:#15803d!important}.ct-stat-icon.text-warning{background:#fffbeb;color:#b45309!important}.ct-stat-icon.text-info{background:#ecfeff;color:#0e7490!important}.ct-stat-info{display:flex;flex-direction:column;gap:.15rem}.ct-stat-label{font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#64748b}.ct-stat-value{font-size:1.4rem;font-weight:800;color:#1e293b;line-height:1.2}.ct-stat-sub{font-size:.85rem;color:#94a3b8;font-weight:600}.ct-row-assessed{background-color:#f8fafc}.ct-row-assessed:hover{background-color:#f1f5f9!important}.ct-row-pending{background-color:#fff}.ct-row-pending:hover{background-color:#f8fafc!important}.ct-student-name-wrap{display:flex;align-items:center;gap:.75rem}.ct-student-name{font-weight:600;color:#334155}.ct-badge-success{background-color:#dcfce7!important;color:#15803d!important;border:1px solid #bbf7d0;border-radius:6px;font-size:.7rem;padding:.25rem .5rem;font-weight:700}.ct-badge-pending{background-color:#f1f5f9!important;color:#475569!important;border:1px solid #e2e8f0;border-radius:6px;font-size:.7rem;padding:.25rem .5rem;font-weight:700}.ct-marks-input-wrapper{max-width:160px}.ct-marks-input{text-align:center;font-weight:700;font-size:1.05rem;border-radius:8px;border:1px solid #cbd5e1;color:#1e293b;padding:.45rem .75rem;background-color:#f8fafc;transition:all .2s ease}.ct-marks-input:focus{border-color:#3b82f6;background-color:#fff;box-shadow:0 0 0 4px #3b82f626}.ct-loading-wrapper{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 0;gap:1rem;color:#64748b}.ct-spinner{width:40px;height:40px;border:3.5px solid #e2e8f0;border-top-color:#3b82f6;border-radius:50%;animation:ct-spin .8s linear infinite}@keyframes ct-spin{to{transform:rotate(360deg)}}.course-form-container,.manage-chapters-container{--course-surface: #ffffff;--course-border: #dbe5f1;--course-title: #12325f;--course-muted: #5a6f90;max-width:980px;margin:28px auto;padding:28px 30px;border-radius:16px;border:1px solid var(--course-border);background:var(--course-surface);box-shadow:0 8px 20px #0c234814}.page-title,.course-form-container h1{margin:0 0 22px;color:var(--course-title)!important;font-size:clamp(1.4rem,2.1vw,2rem)!important;font-weight:800;letter-spacing:.01em;border:none!important;padding:0!important;display:block!important}.page-title:after,.course-form-container h1:after{content:"";display:block;width:66px;height:4px;margin-top:8px;border-radius:999px;background:#2a6fd6}.chapter-form,.course-form-container form{position:relative}.form-group,.course-form-container form>div{margin-bottom:18px}.form-group label,.course-form-container label{display:block;margin-bottom:7px;font-size:.92rem;font-weight:700;color:#173457;letter-spacing:.04em;text-transform:uppercase}.form-group select,.course-form-container select,.form-group input,.course-form-container input{width:100%;border:1px solid #d4e1f1;border-radius:10px;background:#fff;color:#122b4e;font-size:1rem;padding:12px 14px;transition:border-color .2s ease,box-shadow .2s ease}.form-group select:focus,.course-form-container select:focus,.form-group input:focus,.course-form-container input:focus{outline:none;border-color:#2e74df;box-shadow:0 0 0 3px #2e74df29}.form-group select:disabled,.course-form-container select:disabled,.form-group input:disabled,.course-form-container input:disabled{background:#f1f5fb;color:#7a8ea9}.form-actions{margin-top:26px;text-align:right}.submit-btn,.course-form-container button[type=submit]{min-width:170px;border-radius:10px!important;border:1px solid #2a64bf!important;background:#2a6fd6!important;color:#fff!important;font-weight:700;font-size:.98rem;padding:11px 20px!important;box-shadow:0 6px 14px #2a6fd640;transition:transform .16s ease,filter .2s ease,box-shadow .2s ease}.submit-btn:hover,.course-form-container button[type=submit]:hover{transform:translateY(-1px);filter:brightness(.95);box-shadow:0 8px 16px #2a6fd647}.error-message{margin:0 0 14px;padding:10px 12px;border-radius:10px;border:1px solid #fecdd3;background:#fff1f2;color:#be123c;font-weight:600}@media (max-width: 768px){.course-form-container,.manage-chapters-container{margin:12px auto;padding:16px;border-radius:12px}.form-actions{text-align:stretch}.submit-btn,.course-form-container button[type=submit]{width:100%}}.add-chapters-container,.practical-table-container{max-width:1120px;margin:26px auto;padding:22px;border-radius:16px;border:1px solid var(--card-border, #dbe5f1);background:var(--card-bg, #ffffff);box-shadow:0 8px 20px #0000000d}.add-chapters-container .page-title,.practical-table-heading{margin:0 0 16px;font-size:clamp(1.2rem,1.8vw,1.65rem);font-weight:800;color:var(--primary-color, #12335f)!important;border:none!important}.add-chapters-container .page-title:after,.practical-table-heading:after{content:"";display:block;width:60px;height:4px;margin-top:7px;border-radius:999px;background:var(--primary-color, #2a6fd6)}.table-wrapper{width:100%;overflow-x:auto;border:1px solid var(--card-border, #dbe5f1);border-radius:12px;background:var(--card-bg, #ffffff)}.chapters-table,.practical-table{width:100%;min-width:760px;border-collapse:separate;border-spacing:0}.chapters-table th,.chapters-table td,.practical-table th,.practical-table td{border-right:1px solid var(--card-border, #dbe6f3);border-bottom:1px solid var(--card-border, #dbe6f3);padding:12px 14px;font-size:.94rem;color:var(--text-primary, #173759);background:var(--card-bg, #ffffff)}.chapters-table th:last-child,.chapters-table td:last-child,.practical-table th:last-child,.practical-table td:last-child{border-right:none}.chapters-table thead th,.practical-table thead th,.practical-table-header th{background:var(--dash-bg, #f2f6fc)!important;color:var(--primary-color, #213d62)!important;font-weight:700;border-bottom:1px solid var(--card-border, #d4e2f3)}.setting-header,.setting-cell{text-align:center}.table-actions{margin-top:14px;display:flex;justify-content:flex-end}.add-btn,.practical-table-button,.modal-actions .submit-btn,.update-button{border-radius:10px!important;border:1px solid var(--primary-accent-dark, #2a64bf)!important;background:var(--primary-color, #2a6fd6)!important;color:var(--card-bg, #ffffff)!important;font-weight:700;padding:9px 14px!important;box-shadow:0 6px 14px #0000001a;cursor:pointer;transition:all .2s ease}.add-btn:hover,.practical-table-button:hover,.modal-actions .submit-btn:hover,.update-button:hover{opacity:.95;transform:translateY(-1px)}.edit-btn,.delete-btn{border:1px solid transparent;border-radius:8px;cursor:pointer;font-size:.95rem;padding:6px 8px;margin:0 2px}.edit-btn{background:var(--primary-light, #eff5ff);border-color:var(--card-border, #d9e6fb);color:var(--primary-color, #2a6fd6)}.delete-btn{background:#fff3f4;border-color:#ffd7dd;color:#e02424}.modal-overlay{background-color:#00000080}.modal-content{background:var(--card-bg, #ffffff);width:min(500px,92vw);border-radius:14px;border:1px solid var(--card-border, #d5e2f2);box-shadow:0 16px 36px #00000026}.modal-title,.modal-header h3,.header{color:var(--primary-color, #12335f)!important}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid var(--card-border, #e1eaf5);background:var(--dash-bg, #f6f9ff)}.modal-close-btn{border:none;background:transparent;color:var(--text-secondary, #486185);font-size:1.5rem;line-height:1;cursor:pointer}.modal-body{padding:16px}.modal-footer{margin-top:10px}.modal-content input,.input-field{border:1px solid var(--card-border, #d4e1f1);border-radius:10px;padding:10px 12px;background:var(--card-bg, #ffffff);color:var(--text-primary, #111827)}.modal-content input:focus,.input-field:focus{outline:none;border-color:var(--primary-color, #2e74df);box-shadow:0 0 0 3px var(--primary-light, rgba(46, 116, 223, .16))}.modal-actions .cancel-btn{border-radius:10px;border:1px solid var(--card-border, #cfd9e7);background:var(--dash-bg, #f3f6fb);color:var(--text-primary, #2f4667);padding:9px 14px;cursor:pointer}.container{max-width:620px;margin:26px auto;padding:24px;border-radius:16px;border:1px solid var(--card-border, #d7e4f4);background:var(--card-bg, #ffffff);box-shadow:0 12px 28px #0000000d}.divider{height:1px;border:0;background-color:var(--card-border, #dce7f4);margin-bottom:16px}@media (max-width: 768px){.add-chapters-container,.practical-table-container,.container{margin:12px auto;padding:12px;border-radius:12px}.table-actions{justify-content:stretch}.add-btn{width:100%}}.activity-card{border:1px solid #d7e3f3;border-radius:16px;padding:22px;text-align:center;cursor:pointer;transition:all .3s ease;background:linear-gradient(180deg,#fff,#f8fbff);height:100%;min-height:180px;display:flex;align-items:center;justify-content:center;box-shadow:0 10px 22px #0f285414}.activity-card:hover{border-color:#9ec6fb;box-shadow:0 14px 24px #2459b024;transform:translateY(-4px)}.activity-card.selected{border-color:#3b78d4;background:linear-gradient(180deg,#f2f8ff,#eaf5ff);box-shadow:0 14px 26px #1850a433}.activity-card-inner{width:100%;position:relative}.activity-card-badge{position:absolute;right:0;top:-10px;border:1px solid #cfe0f5;background:#f6faff;color:#35557e;font-size:.74rem;font-weight:700;border-radius:999px;padding:4px 10px}.activity-card.selected .activity-card-badge{border-color:#7cb4ff;background:#e6f2ff;color:#154e99}.activity-card-icon{font-size:2.5rem;color:#2a6fd6;margin-bottom:15px;display:block}.activity-card.selected .activity-card-icon{color:#185dc6;transform:scale(1.1)}.activity-card-title{font-size:1.25rem;font-weight:700;color:#193457;margin-bottom:8px}.activity-card-label{font-size:.9rem;color:#5f7698;margin:0}.activity-card.selected .activity-card-label{color:#2f5788}.max-marks-selector-container{margin:8px 0 14px}.ptm-max-card{border:1px solid #d7e3f3!important;border-radius:12px!important;box-shadow:0 6px 16px #0e244a14!important}.ptm-max-body{background:#fff}.ptm-max-card-compact{overflow:hidden}.ptm-max-body-compact{padding:10px 12px!important}.ptm-max-topbar{display:grid;grid-template-columns:auto 1fr 140px;align-items:center;gap:10px}.ptm-max-title-wrap{display:inline-flex;align-items:center;gap:6px;color:#244469;font-weight:700}.ptm-max-title{font-size:.92rem}.ptm-max-quick-grid{display:inline-flex;flex-wrap:wrap;gap:8px}.ptm-max-quick-btn{border:1px solid #d7e3f3;background:#f9fbff;border-radius:10px;min-height:36px;min-width:52px;display:inline-flex;align-items:center;justify-content:center;padding:6px 10px;color:#23466f;font-weight:700;transition:all .2s ease}.ptm-max-quick-btn:hover{border-color:#93b8ee;background:#eef5ff;transform:translateY(-1px)}.ptm-max-quick-btn.active{border-color:#2a6fd6;background:#eaf3ff;box-shadow:0 4px 10px #1c57b124}.ptm-max-quick-value{font-size:1rem;line-height:1}.ptm-max-select{border-radius:10px!important;border-color:#cfe0f5!important;min-height:38px;font-size:.9rem!important}.ptm-max-inline-note{margin-top:8px;display:inline-flex;align-items:center;gap:6px;font-size:.85rem;color:#1e6b58;background:#edfbf5;border:1px solid #c5efde;border-radius:999px;padding:5px 10px}@media (max-width: 900px){.ptm-max-topbar{grid-template-columns:1fr;justify-items:stretch}.ptm-max-select{width:100%}}.student-marks-grid-container{margin:10px 0}.ptm-marks-card{border:1px solid #d7e3f3!important;border-radius:16px!important;overflow:hidden;box-shadow:0 12px 28px #0c234817!important}.ptm-marks-header{background:linear-gradient(135deg,#2a6fd6,#1f63d3 62%,#13b8b0)!important;color:#fff!important;border-bottom:0!important}.students-series{display:flex;flex-direction:column;gap:8px;max-height:420px;overflow-y:auto;padding-right:6px}.student-entry-card{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border:1px solid #deebf8;border-radius:10px;background-color:#fbfdff;transition:all .3s ease;gap:10px}.student-entry-card:hover{border-color:#b5d4f8;box-shadow:0 6px 14px #1855ab1f}.student-info{display:flex;align-items:center;gap:10px;flex:1;min-width:0}.student-number{font-size:1rem;font-weight:700;color:#2a6fd6;min-width:28px;text-align:center}.student-details{flex:1;min-width:0}.student-name{font-size:.9rem;font-weight:700;color:#173759;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.student-roll{font-size:.78rem;color:#5f7698;margin-top:1px}.ptm-saved-pill{margin-left:auto;font-size:.7rem;font-weight:700;border:1px solid #bcebd8;background:#ebfbf4;color:#0f7a58;border-radius:999px;padding:3px 7px;display:inline-flex;gap:5px;align-items:center}.marks-input-section{display:flex;align-items:center;gap:8px;flex-shrink:0}.marks-input-wrapper{display:flex;align-items:center;border:1px solid #cfe0f5;border-radius:8px;background-color:#fff;overflow:hidden}.marks-input{font-size:1rem;font-weight:600;text-align:center;padding:7px 10px;border:none;width:64px;background-color:#fff;color:#333;outline:none}.marks-input:focus{background-color:#f8fbff;box-shadow:inset 0 0 0 2px #2a6fd6}.marks-input:disabled{background-color:#f0f0f0;color:#999;cursor:not-allowed}.marks-input::placeholder{color:#999}@media (max-width: 768px){.marks-input{-webkit-appearance:none;-moz-appearance:none;appearance:none}}.marks-input::-webkit-outer-spin-button,.marks-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.marks-input[type=text]{-moz-appearance:textfield}.marks-max-label{background-color:#f3f8ff;border-left:1px solid #d6e5f6;font-weight:600;color:#355a89;padding:7px 8px;margin:0;font-size:.82rem}.ptm-grid-footer{border:1px solid #deebf8;border-radius:10px;background:#f8fbff;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px}.ptm-save-all-btn{border-radius:8px!important;border:1px solid #1f5cbe!important;background:linear-gradient(135deg,#2f74e0,#1f63d3 56%,#1857bb)!important;color:#fff!important;font-weight:700;padding:8px 13px!important;min-width:150px;box-shadow:0 10px 18px #1f63d338}.ptm-save-all-btn:hover:not(:disabled){transform:translateY(-1px);filter:brightness(.97)}.ptm-save-all-btn:disabled{opacity:.65;cursor:not-allowed}.students-series::-webkit-scrollbar{width:8px}.students-series::-webkit-scrollbar-track{background:#f1f1f1;border-radius:10px}.students-series::-webkit-scrollbar-thumb{background:#b8cff1;border-radius:10px}.students-series::-webkit-scrollbar-thumb:hover{background:#95b8e8}@media (max-width: 768px){.student-entry-card{flex-direction:column;align-items:flex-start;gap:8px}.marks-input-section{width:100%}.marks-input-wrapper{flex:1}.marks-input{width:100%}.ptm-grid-footer{flex-direction:column;align-items:stretch}.ptm-save-all-btn{width:100%}.students-series{max-height:66vh}}.ptm-shell{--ptm-bg: #eef3fb;--ptm-surface: #ffffff;--ptm-border: #d7e3f3;--ptm-text: #143458;--ptm-muted: #5b7392;--ptm-primary: #2a6fd6;--ptm-primary-dark: #1e57b2;--ptm-accent: #13b8b0;--ptm-warn: #f4b400;background:linear-gradient(180deg,#f2f6fc 0%,var(--ptm-bg) 100%);min-height:calc(100vh - 90px)}.ptm-hero-card,.ptm-panel{border:1px solid var(--ptm-border)!important;border-radius:16px!important;box-shadow:0 10px 26px #0e234614!important;overflow:hidden;background:var(--ptm-surface)}.ptm-hero-header{border-bottom:1px solid rgba(17,54,102,.08)!important;background:linear-gradient(135deg,#f4f8ff,#eaf2ff 55%,#e9fcfb)!important;color:var(--ptm-text);padding:16px 22px!important}.ptm-hero-body{background:#fff;color:var(--ptm-muted)}.ptm-step-title{color:var(--ptm-text);font-weight:800}.ptm-panel-header{background:#f7faff!important;border-bottom:1px solid var(--ptm-border)!important;color:var(--ptm-text)}.ptm-back-btn{border:1px solid #cfdcef!important;background:#f5f8fd!important;color:#2b4466!important}.ptm-edit-btn{border:1px solid #e4ae10!important;background:linear-gradient(135deg,#ffc83f,#f4b400)!important;color:#2f2800!important;font-weight:700}.ptm-max-number{font-size:3rem;font-weight:800;color:var(--ptm-primary);line-height:1}.ptm-chip,.ptm-chip-secondary{border-radius:999px;padding:8px 12px;font-weight:700}.ptm-chip{background:#e7f3ff!important;color:#1b5dbd!important}.ptm-chip-secondary{background:#e9f8f8!important;color:#126f6a!important}.ptm-info-alert{background:#ecf6ff!important;border:1px solid #cfe3fb!important;color:#1e4f8f!important}.ptm-warn-alert{background:#fff9e8!important;border:1px solid #f5df9a!important;color:#664b00!important}@media (max-width: 768px){.ptm-shell{padding:12px!important}.ptm-max-number{font-size:2.2rem}}:root{--def-primary: #1f5fbf;--def-primary-dark: #134996;--def-soft: #edf4ff;--def-border: #d7e5f8;--def-text: #143257;--def-muted: #5d7090;--def-success: #1d8f5f;--def-danger: #dc3545;--def-warning: #f59e0b}.defaulter-page-container{min-height:calc(100vh - 64px);background:radial-gradient(circle at 8% 8%,rgba(31,95,191,.12),transparent 38%),radial-gradient(circle at 92% 2%,rgba(19,73,150,.08),transparent 35%),linear-gradient(180deg,#f2f7ff,#eaf2ff)}.defaulter-select-page{padding:1.1rem}.defaulter-select-hero{border:1px solid var(--def-border);border-radius:18px;background:linear-gradient(145deg,#fff,#edf5ff);box-shadow:0 12px 26px #122b5214;padding:1.1rem 1.2rem;margin-bottom:1rem}.defaulter-select-hero h2{margin:0;color:var(--def-text);font-size:1.9rem;font-weight:800}.defaulter-select-hero p{margin:.35rem 0 0;color:var(--def-muted);font-weight:600}.defaulter-Ciaan-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:.9rem}.defaulter-Ciaan-card{border:1px solid var(--def-border);border-radius:14px;background:#fff;box-shadow:0 10px 24px #122b5214;padding:.95rem;display:flex;flex-direction:column;gap:.3rem;text-align:left;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.defaulter-Ciaan-card:hover{transform:translateY(-3px);box-shadow:0 14px 26px #122b521f}.defaulter-Ciaan-icon{font-size:1.4rem;color:var(--def-primary)}.defaulter-Ciaan-card h3{margin:.2rem 0;color:var(--def-text);font-size:1.1rem;font-weight:800}.defaulter-Ciaan-card p{margin:0;color:var(--def-muted);font-size:.92rem;font-weight:600}.defaulter-Ciaan-cta{margin-top:.5rem;color:var(--def-primary);font-weight:800;font-size:.9rem}.defaulter-state{border:1px solid var(--def-border);border-radius:12px;background:#fff;color:var(--def-muted);font-weight:700;padding:1rem;text-align:center}.defaulter-state-error{border-color:#f8c6cc;background:#fff1f2;color:#842029}.defaulter-detail-page{padding:1rem}.defaulter-header{border:1px solid var(--def-border);border-radius:16px;background:linear-gradient(145deg,#fff,#edf5ff);box-shadow:0 12px 26px #122b5214;padding:1rem 1.2rem;display:flex;justify-content:space-between;align-items:center;gap:.9rem;margin-bottom:1rem}.defaulter-header h1{margin:0;color:var(--def-text);font-size:1.8rem;font-weight:800}.header-buttons{display:flex;gap:.6rem}.print-button,.back-button{border:none;border-radius:10px;min-height:40px;padding:0 1rem;color:#fff;font-size:.9rem;font-weight:700;cursor:pointer;background:linear-gradient(135deg,var(--def-primary),var(--def-primary-dark))}.back-button{background:#edf4ff;color:var(--def-primary);border:1px solid #bfd6f7}.attendance-section{border:1px solid var(--def-border);border-radius:16px;background:#fff;box-shadow:0 10px 24px #122b5214;padding:1rem;margin-bottom:1rem}.attendance-section h2,.attendance-section h3{margin:0 0 .9rem;color:var(--def-text);font-weight:800}.attendance-summary-box{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:.7rem;margin-bottom:.9rem}.summary-card{border:1px solid var(--def-border);border-radius:12px;background:#f7fbff;padding:.8rem}.summary-card span{color:var(--def-primary);font-size:1.4rem;font-weight:800;display:block}.summary-card p{margin:.2rem 0 0;color:var(--def-muted);font-size:.82rem;font-weight:700}.table-container{overflow:auto;border:1px solid var(--def-border);border-radius:12px}.attendance-table{width:100%;border-collapse:collapse;min-width:720px}.attendance-table th,.attendance-table td{border:1px solid #e6eefb;padding:.65rem .7rem;font-size:.88rem}.attendance-table th{background:#edf4ff;color:#355ea8;font-weight:800;text-align:center}.attendance-table td{color:#183861}.attendance-table tbody tr:nth-child(2n) td{background:#fbfdff}.print-only-header,.print-only-footer{display:none}@media (max-width: 768px){.defaulter-header{flex-direction:column;align-items:flex-start}.header-buttons{width:100%}.print-button,.back-button{flex:1}}@media print{.header-buttons,.print-button,.back-button,.no-print,.defaulter-select-page,.defaulter-select-hero,.defaulter-Ciaan-grid,.sidebar,.sidebar-overlay{display:none!important}.defaulter-detail-page,.attendance-section,.table-container{box-shadow:none!important;border:1px solid #999!important}.print-only-header,.print-only-footer{display:block!important}}.sa-dashboard{width:100%;max-width:1680px;margin:0 auto;padding:24px;display:grid;gap:24px;background:linear-gradient(180deg,#f8fafc,#eef2f7);min-height:100%}.sa-hero{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding:20px 22px;border-radius:16px;border:1px solid #dbe3ef;background:linear-gradient(135deg,#fff,#f8fbff)}.sa-kicker{margin:0 0 6px;color:#1d4ed8;font-size:.86rem;font-weight:700}.sa-hero h1{margin:0;color:#0f172a;font-size:2rem;line-height:1.1}.sa-hero__subtitle{margin:8px 0 0;color:#475569;font-size:1rem}.sa-refresh{border:none;border-radius:12px;background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;font-weight:700;padding:11px 16px;display:inline-flex;align-items:center;gap:8px;cursor:pointer;box-shadow:0 10px 24px #2563eb47}.sa-refresh:hover{background:linear-gradient(135deg,#1d4ed8,#1e40af)}.sa-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}.sa-stat-card{position:relative;border-radius:14px;border:1px solid #e2e8f0;background:#fff;color:#0f172a;padding:16px 18px;display:flex;align-items:center;gap:14px;overflow:hidden;box-shadow:0 16px 30px #0f172a14}.sa-stat-card:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,var(--sa-accent-soft),transparent 65%);opacity:.6;pointer-events:none}.sa-stat-card--blue{--sa-accent: #1d4ed8;--sa-accent-soft: rgba(191, 219, 254, .75)}.sa-stat-card--teal{--sa-accent: #0f766e;--sa-accent-soft: rgba(153, 246, 228, .6)}.sa-stat-card--slate{--sa-accent: #475569;--sa-accent-soft: rgba(226, 232, 240, .8)}.sa-stat-card__icon{width:48px;height:48px;border-radius:12px;background:var(--sa-accent-soft, #e2e8f0);color:var(--sa-accent, #334155);display:inline-flex;align-items:center;justify-content:center;font-size:1.15rem;position:relative;z-index:1}.sa-stat-card__content{display:grid;gap:2px;position:relative;z-index:1}.sa-stat-card__label{margin:0;font-size:.82rem;color:#64748b}.sa-stat-card__content h3{margin:0;font-size:1.9rem;line-height:1;color:#0f172a}.sa-stat-card__content span{font-size:.78rem;color:var(--sa-accent, #475569);font-weight:600}.sa-hero__meta{margin-top:12px;display:flex;flex-wrap:wrap;gap:8px;align-items:center}.sa-live{background:#dcfce7;color:#166534;font-weight:700;font-size:.75rem;padding:4px 10px;border-radius:999px}.sa-update-text{color:#64748b;font-size:.82rem;font-weight:600}.sa-section{background:#fff;border:1px solid #dbe3ef;border-radius:16px;padding:18px}.sa-section__header{margin-bottom:14px;border-bottom:1px solid #e8eef6;padding-bottom:10px}.sa-section__header h2{margin:0;color:#0f172a;font-size:1.5rem}.sa-management-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px}.sa-management-card{border-radius:14px;border:1px solid #e6edf6;background:linear-gradient(180deg,#fff,#f8fbff);padding:16px;display:grid;gap:10px;min-height:260px}.sa-management-card__top{display:flex;justify-content:space-between;align-items:center}.sa-management-card__icon{width:48px;height:48px;border-radius:12px;background:linear-gradient(135deg,#dbeafe,#eff6ff);color:#1d4ed8;display:inline-flex;align-items:center;justify-content:center;font-size:1.08rem}.sa-badge{font-size:.75rem;font-weight:700;color:#3730a3;background:#e0e7ff;border-radius:999px;padding:5px 10px}.sa-management-card h3{margin:0;color:#0f172a;font-size:1.3rem}.sa-management-card p{margin:0;color:#475569;line-height:1.5}.sa-management-card__meta{margin-top:auto;color:#1d4ed8;font-size:.82rem;font-weight:700}.sa-action-btn{border:none;border-radius:10px;background:linear-gradient(135deg,#f97316,#ea580c);color:#fff;padding:10px 14px;font-weight:700;display:inline-flex;justify-content:center;align-items:center;gap:8px;cursor:pointer}.sa-action-btn:hover{background:linear-gradient(135deg,#ea580c,#c2410c)}.sa-activity-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px}.sa-activity-card{border-radius:14px;border:1px solid #e5eaf3;background:#fff;padding:14px;display:flex;gap:12px;align-items:flex-start}.sa-activity-card__icon{width:40px;height:40px;border-radius:10px;background:#eef2ff;color:#4f46e5;display:inline-flex;align-items:center;justify-content:center;font-size:.95rem;flex-shrink:0}.sa-activity-card h4{margin:0 0 4px;color:#0f172a;font-size:1.05rem}.sa-activity-card p{margin:0;color:#475569;font-size:.9rem;line-height:1.5}.sa-activity-card span{margin-top:6px;display:inline-block;color:#64748b;font-size:.78rem;font-weight:600}@media (max-width: 768px){.sa-dashboard{padding:14px;gap:14px}.sa-hero{flex-direction:column;padding:14px}.sa-hero h1{font-size:1.6rem}.sa-hero__subtitle{font-size:.92rem}.sa-refresh{width:100%;justify-content:center}.sa-section{padding:14px}.sa-section__header h2{font-size:1.25rem}}.create-institution-container{width:100%;max-width:1680px;margin:0 auto;padding:22px;background:linear-gradient(180deg,#f8fafc,#eff4fb);min-height:100%;color:#0f172a}.create-institution-container .page-header{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;padding:16px 18px;border-radius:14px;border:1px solid #dbe5f1;background:linear-gradient(135deg,#fff,#f7fbff)}.create-institution-container .page-header h2{margin:0;font-size:1.7rem;color:#0f172a}.create-institution-container .text-muted{margin:6px 0 0;color:#475569!important;font-size:.95rem}.create-institution-container .grid-layout{display:grid;grid-template-columns:1fr;gap:14px}.create-institution-container .main-col{width:100%}.create-institution-container .card.section-card{border-radius:16px;border:1px solid #dbe5f1;overflow:hidden;box-shadow:0 12px 26px #0206170f;background:#fff}.create-institution-container .card-header{padding:16px 20px;border-bottom:1px solid #e7edf5;background:linear-gradient(135deg,#111827,#1f2937)}.create-institution-container .card-header h5{margin:0;color:#f8fafc;font-size:1.06rem;letter-spacing:.2px}.create-institution-container .card-body{padding:18px}.create-institution-container .form-label{font-weight:700;color:#1e293b;margin-bottom:6px}.create-institution-container .form-label.required:after{content:" *";color:#ef4444}.create-institution-container .form-control{border:1px solid #cbd5e1;border-radius:10px;padding:10px 12px;min-height:44px;color:#0f172a;background:#fff}.create-institution-container .form-control:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f629}.create-institution-container .form-text{color:#64748b;font-size:.82rem}.create-institution-container .logo-file-name{margin-top:8px;color:#0f766e;font-weight:600;font-size:.83rem}.create-institution-container .toggle-adv{border:1px solid #cbd5e1;border-radius:10px;background:#f8fafc;color:#1f2937;font-weight:700;padding:10px 14px;min-height:42px;transition:all .2s ease}.create-institution-container .toggle-adv.active{background:#e0ecff;border-color:#93c5fd;color:#1e40af}.create-institution-container .advanced-block{border:1px dashed #cbd5e1;border-radius:12px;padding:14px;background:#f8fbff;margin-bottom:12px}.create-institution-container .advanced-block h6{margin:0;color:#0f172a;font-size:.98rem}.create-institution-container .form-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}.create-institution-container .btn{border-radius:10px;min-height:42px;padding:9px 15px;font-weight:700;border:1px solid transparent}.create-institution-container .btn-primary{background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff}.create-institution-container .btn-primary:hover{background:linear-gradient(135deg,#1d4ed8,#1e40af)}.create-institution-container .btn-outline{background:#fff;color:#1e293b!important;border-color:#cbd5e1}.create-institution-container .btn-outline:hover{background:#f1f5f9}.create-institution-container .btn-sm{min-height:32px;padding:4px 10px}.create-institution-container .alert{border-radius:12px;border:1px solid transparent;display:flex;align-items:center;justify-content:space-between;gap:10px}.create-institution-container .alert-danger{background:#fef2f2;border-color:#fecaca;color:#991b1b}.create-institution-container .alert-warning{background:#fffbeb;border-color:#fde68a;color:#92400e}.create-institution-container .btn-close{border:none;background:transparent;font-size:1rem;cursor:pointer}.create-institution-container .success-box{border:1px solid #86efac;border-radius:16px;background:linear-gradient(180deg,#f0fdf4,#ecfdf5);padding:16px;margin-bottom:16px;box-shadow:0 10px 20px #16a34a14}.create-institution-container .success-header{display:flex;gap:10px;align-items:flex-start;margin-bottom:14px;padding-bottom:12px;border-bottom:1px solid #bbf7d0}.create-institution-container .success-header i{color:#16a34a;font-size:1.3rem;margin-top:2px}.create-institution-container .credentials-display{display:grid;gap:10px}.create-institution-container .credentials-title{font-size:.86rem;font-weight:800;letter-spacing:.5px;text-transform:uppercase;color:#166534;margin:2px 0}.create-institution-container .credential-row{display:grid;grid-template-columns:140px 1fr;gap:10px;align-items:center}.create-institution-container .credential-label{font-weight:700;color:#1f2937;font-size:.9rem}.create-institution-container .credential-box{border:1px solid #a7f3d0;border-radius:12px;background:#fff;min-height:44px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 12px;color:#064e3b;font-weight:600}.create-institution-container .credential-value{display:inline-block;max-width:100%;font-family:Segoe UI,system-ui,-apple-system,sans-serif;overflow-wrap:anywhere}.create-institution-container .credential-copy-btn{border:1px solid #34d399;border-radius:8px;background:#ecfdf5;color:#065f46;display:inline-flex;align-items:center;gap:6px;padding:5px 10px;font-size:.78rem;font-weight:700;min-height:32px;line-height:1;flex-shrink:0;transition:all .2s ease}.create-institution-container .credential-copy-btn:hover{background:#d1fae5;border-color:#10b981;color:#064e3b}.create-institution-container .credential-copy-btn:focus-visible{outline:3px solid rgba(16,185,129,.25);outline-offset:1px}.create-institution-container .created-logo-preview{width:44px;height:44px;object-fit:cover;border-radius:8px;border:1px solid #bbf7d0}@media (max-width: 992px){.create-institution-container{padding:16px}.create-institution-container .page-header h2{font-size:1.45rem}}@media (max-width: 768px){.create-institution-container{padding:12px}.create-institution-container .page-header{flex-direction:column;align-items:flex-start}.create-institution-container .card-body{padding:14px}.create-institution-container .credential-row{grid-template-columns:1fr;gap:6px}.create-institution-container .form-actions{flex-direction:column}.create-institution-container .form-actions .btn{width:100%}}.institutions-container{width:100%;max-width:1680px;margin:0 auto;padding:22px;background:linear-gradient(180deg,#f8fafc,#eff4fb);min-height:100%;color:#0f172a}.institutions-header{margin-bottom:16px;padding:16px 18px;border-radius:14px;border:1px solid #dbe5f1;background:linear-gradient(135deg,#fff,#f7fbff)}.institutions-header h2{margin:0;font-size:1.7rem;color:#0f172a;font-weight:800}.institutions-header .muted{margin:6px 0 0;color:#475569;font-size:.95rem}.search-refresh-container{display:flex;gap:12px;margin-bottom:16px;align-items:stretch;flex-wrap:wrap}.search-input-group{flex:1;min-width:280px;display:flex;align-items:center;background:#fff;border-radius:12px;border:1px solid #cbd5e1;overflow:hidden;box-shadow:0 6px 16px #0206170a}.search-input-group:focus-within{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f629}.search-icon{padding:0 14px;color:#2563eb;font-size:.95rem}.search-input{border:none;padding:11px 0;font-size:.96rem;width:100%;outline:none;color:#0f172a}.btn-clear{background:transparent;border:none;color:#94a3b8;padding:0 14px;cursor:pointer}.btn-clear:hover{color:#0f172a}.btn-row{display:flex;gap:10px;flex-wrap:wrap}.create-btn,.refresh-btn{min-height:44px;padding:8px 16px;border-radius:10px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;font-size:.92rem;border:1px solid transparent;white-space:nowrap}.create-btn{background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff}.create-btn:hover{background:linear-gradient(135deg,#1d4ed8,#1e40af);color:#fff}.refresh-btn{background:#fff;color:#1e293b;border-color:#cbd5e1}.refresh-btn:hover{background:#f1f5f9;color:#0f172a}.alert{border-radius:12px;border:1px solid transparent;display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:14px}.alert-danger{background:#fef2f2;border-color:#fecaca;color:#991b1b}.btn-close{border:none;background:transparent;font-size:1rem;cursor:pointer}.card.neutral-card{border-radius:14px;border:1px solid #dbe5f1;overflow:hidden;box-shadow:0 10px 24px #0206170f}.card.neutral-card .card-body{background:#fff}.institutions-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:14px}.institution-item{background:#fff;border:1px solid #dbe5f1;border-radius:14px;cursor:pointer;transition:all .2s ease;box-shadow:0 8px 22px #0206170d}.institution-item:hover{transform:translateY(-2px);border-color:#93c5fd;box-shadow:0 14px 26px #2563eb1f}.institution-item.inactive{border-color:#fecaca;background:#fff7f7}.institution-item .card-body{padding:16px;display:flex;align-items:center}.logo-circle{width:48px;height:48px;background:#dbeafe;color:#1d4ed8;border-radius:12px;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:1.05rem;border:1px solid #bfdbfe}.institution-item.inactive .logo-circle{background:#fee2e2;color:#991b1b;border-color:#fecaca}.institution-name{font-weight:700;font-size:1rem;color:#0f172a;margin-bottom:6px}.institution-meta{display:flex;gap:7px;flex-wrap:wrap}.meta-pill{font-size:.74rem;background:#f1f5f9;color:#334155;padding:4px 8px;border-radius:8px;border:1px solid #e2e8f0;font-weight:600}.status-pill{font-weight:700;text-transform:uppercase;letter-spacing:.03em}.status-active{background:#ecfdf5;color:#065f46;border-color:#a7f3d0}.status-inactive{background:#fef2f2;color:#b91c1c;border-color:#fecaca}.palette-pill{display:inline-flex;align-items:center;gap:6px;background:#eef2ff;color:#312e81;border-color:#c7d2fe}.palette-dot{width:12px;height:12px;border-radius:50%;border:1px solid rgba(15,23,42,.08);display:inline-block}.chev{margin-left:auto;color:#cbd5e1}.institution-item:hover .chev{color:#2563eb}.empty-state{text-align:center;padding:56px 18px;color:#64748b}.empty-icon{font-size:2.8rem;color:#cbd5e1;margin-bottom:14px}@media (max-width: 992px){.institutions-container{padding:16px}.institutions-header h2{font-size:1.45rem}}@media (max-width: 768px){.institutions-container{padding:12px}.search-refresh-container{flex-direction:column}.btn-row{width:100%;display:grid;grid-template-columns:1fr}.create-btn,.refresh-btn{width:100%}.institutions-list{grid-template-columns:1fr}.institution-item .card-body{padding:14px}}.manage-institution-container{width:100%;max-width:1680px;margin:0 auto;padding:22px;background:linear-gradient(180deg,#f8fafc,#eff4fb);min-height:100%;color:#0f172a}.manage-institution-container .page-header{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;padding:16px 18px;border-radius:14px;border:1px solid #dbe5f1;background:linear-gradient(135deg,#fff,#f7fbff)}.manage-institution-container .page-header h2{margin:0;font-size:1.7rem;color:#0f172a;font-weight:800}.manage-institution-container .text-muted{margin:6px 0 0;color:#475569!important;font-size:.95rem}.manage-institution-container .card{border-radius:14px;border:1px solid #dbe5f1;overflow:hidden;box-shadow:0 10px 24px #0206170f;background:#fff}.manage-institution-container .empty-card{margin-bottom:14px}.manage-institution-container .card-header{padding:15px 18px;border-bottom:1px solid #e7edf5;background:linear-gradient(135deg,#111827,#1f2937)}.manage-institution-container .card-header h5{margin:0;color:#f8fafc;font-size:1.02rem;letter-spacing:.2px}.manage-institution-container .card-body{padding:16px}.manage-institution-container .institution-info-card{margin-bottom:14px}.manage-institution-container .row.info-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:0}.manage-institution-container .col.info-col{min-width:0}.manage-institution-container .info-item{margin-bottom:12px}.manage-institution-container .info-label{font-weight:700;color:#1e293b;margin-bottom:5px;display:block;font-size:.86rem;text-transform:uppercase;letter-spacing:.04em}.manage-institution-container .info-value{margin:0;color:#0f172a;font-size:.98rem;font-weight:600}.manage-institution-container .badge{display:inline-flex;align-items:center;border-radius:999px;padding:4px 10px;font-size:.76rem;font-weight:700;border:1px solid transparent}.manage-institution-container .badge-primary{background:#dbeafe;color:#1d4ed8;border-color:#bfdbfe}.manage-institution-container .status-badge-active{background:#ecfdf5;color:#065f46;border-color:#a7f3d0}.manage-institution-container .status-badge-inactive{background:#fef2f2;color:#b91c1c;border-color:#fecaca}.manage-institution-container .management-sections{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.manage-institution-container .section-card{margin-bottom:0}.manage-institution-container .section-card.border-danger{border-color:#fecaca}.manage-institution-container .section-card .card-header.bg-danger{background:linear-gradient(135deg,#b91c1c,#991b1b)}.manage-institution-container .section-card .card-header.text-white h5{color:#fff}.manage-institution-container .form-label{display:block;margin-bottom:6px;font-weight:700;color:#1e293b}.manage-institution-container .form-label.required:after{content:" *";color:#ef4444}.manage-institution-container .form-control{width:100%;padding:10px 12px;border-radius:10px;border:1px solid #cbd5e1;background:#fff;color:#0f172a;min-height:44px}.manage-institution-container .form-control:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f629;outline:none}.manage-institution-container .form-text{color:#64748b;font-size:.82rem;margin-top:6px}.manage-institution-container .grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.manage-institution-container .security-section{border:1px dashed #cbd5e1;border-radius:12px;background:#f8fbff;padding:14px;margin-top:10px}.manage-institution-container .security-title{margin:0 0 12px;font-size:.95rem;color:#0f172a;font-weight:700}.manage-institution-container .form-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;margin-top:12px}.manage-institution-container .btn{min-height:42px;padding:8px 15px;border-radius:10px;border:1px solid transparent;font-weight:700;font-size:.9rem;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease}.manage-institution-container .btn-primary{background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff}.manage-institution-container .btn-primary:hover{background:linear-gradient(135deg,#1d4ed8,#1e40af)}.manage-institution-container .btn-success{background:linear-gradient(135deg,#16a34a,#15803d);color:#fff}.manage-institution-container .btn-success:hover{background:linear-gradient(135deg,#15803d,#166534)}.manage-institution-container .btn-danger{background:linear-gradient(135deg,#dc2626,#b91c1c);color:#fff}.manage-institution-container .btn-danger:hover{background:linear-gradient(135deg,#b91c1c,#991b1b)}.manage-institution-container .btn-outline{background:#fff;color:#1e293b;border-color:#cbd5e1}.manage-institution-container .btn-outline:hover{background:#f1f5f9;color:#0f172a}.manage-institution-container .btn-sm{min-height:32px;padding:4px 10px}.manage-institution-container .status-toggle-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.manage-institution-container .status-title{font-weight:800;color:#0f172a}.manage-institution-container .status-text{margin-top:4px;font-weight:700}.manage-institution-container .status-text-active{color:#15803d}.manage-institution-container .status-text-inactive{color:#b91c1c}.manage-institution-container .status-note{margin-top:4px;color:#64748b;font-size:.84rem}.manage-institution-container .switch{position:relative;display:inline-block;width:54px;height:30px}.manage-institution-container .switch input{opacity:0;width:0;height:0}.manage-institution-container .slider{position:absolute;top:0;right:0;bottom:0;left:0;cursor:pointer;background:#e2e8f0;border-radius:999px;transition:.2s ease}.manage-institution-container .slider:before{content:"";position:absolute;width:22px;height:22px;left:4px;top:4px;border-radius:50%;background:#fff;transition:.2s ease;box-shadow:0 3px 10px #0f172a33}.manage-institution-container .switch input:checked+.slider{background:#22c55e}.manage-institution-container .switch input:checked+.slider:before{transform:translate(24px)}.manage-institution-container .palette-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.manage-institution-container .palette-name{margin:0 0 6px;font-size:.98rem;color:#0f172a;font-weight:700;text-transform:capitalize}.manage-institution-container .palette-swatch-row{display:flex;align-items:center;flex-wrap:wrap;gap:7px}.manage-institution-container .palette-swatch{width:20px;height:20px;border-radius:6px;border:1px solid #dbe5f1}.manage-institution-container .palette-note{margin-top:6px;color:#64748b;font-size:.84rem}.manage-institution-container .alert{border-radius:12px;border:1px solid transparent;padding:12px;margin-bottom:12px}.manage-institution-container .alert-danger{background:#fef2f2;border-color:#fecaca;color:#991b1b}.manage-institution-container .alert-warning{background:#fffbeb;border-color:#fde68a;color:#92400e}.manage-institution-container .alert-info{background:#eff6ff;border-color:#bfdbfe;color:#1e3a8a}.manage-institution-container .spinner{width:42px;height:42px;border-radius:50%;border:4px solid #dbeafe;border-top-color:#2563eb;animation:manageSpin .85s linear infinite;margin:8px auto}.manage-institution-container .loader-text{margin-top:8px;color:#475569;font-weight:600}.manage-institution-container .text-center{text-align:center}.manage-institution-container .mb-0{margin-bottom:0!important}.manage-institution-container .mb-1{margin-bottom:.25rem!important}.manage-institution-container .mb-3{margin-bottom:.9rem!important}.manage-institution-container .mt-3{margin-top:.9rem!important}.manage-institution-container .small{font-size:.84rem}.modal-overlay.palette-modal{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a8c;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;padding:14px;z-index:9999}.modal-overlay.palette-modal .modal-dialog{width:min(960px,96vw);max-height:92vh;overflow-y:auto;border-radius:14px;border:1px solid #dbe5f1;box-shadow:0 22px 50px #02061759;background:#fff}.modal-overlay.palette-modal .modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:16px 18px;border-bottom:1px solid #e2e8f0;background:linear-gradient(135deg,#fff,#f7fbff);position:sticky;top:0;z-index:1}.modal-overlay.palette-modal .modal-header h5{margin:0;color:#0f172a;font-weight:800}.modal-overlay.palette-modal .modal-header p{margin:0;color:#64748b}.modal-overlay.palette-modal .modal-body{padding:16px}.modal-overlay.palette-modal .security-section{border:1px dashed #cbd5e1;border-radius:12px;background:#f8fbff;padding:14px}.modal-overlay.palette-modal .security-title{margin:0 0 12px;font-size:.94rem;color:#0f172a;font-weight:700}.modal-overlay.palette-modal .form-label{margin-bottom:6px;font-weight:700;color:#1e293b}.modal-overlay.palette-modal .form-control{width:100%;min-height:42px;border-radius:10px;border:1px solid #cbd5e1;padding:10px 12px}.modal-overlay.palette-modal .form-control:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f629;outline:none}.modal-overlay.palette-modal .form-text{color:#64748b;font-size:.82rem;margin-top:6px}.modal-overlay.palette-modal .grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.modal-overlay.palette-modal .form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:12px;flex-wrap:wrap}.modal-overlay.palette-modal .btn{min-height:40px;border-radius:10px;padding:8px 14px;font-weight:700;border:1px solid transparent}.modal-overlay.palette-modal .btn-primary{background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff}.modal-overlay.palette-modal .btn-outline{background:#fff;color:#1e293b;border-color:#cbd5e1}@keyframes manageSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (max-width: 1200px){.manage-institution-container .management-sections{grid-template-columns:1fr}}@media (max-width: 992px){.manage-institution-container{padding:16px}.manage-institution-container .page-header h2{font-size:1.45rem}}@media (max-width: 768px){.manage-institution-container{padding:12px}.manage-institution-container .page-header{flex-direction:column;align-items:flex-start}.manage-institution-container .row.info-row,.manage-institution-container .grid-2,.modal-overlay.palette-modal .grid-2{grid-template-columns:1fr}.manage-institution-container .form-actions,.modal-overlay.palette-modal .form-actions{flex-direction:column;align-items:stretch}.manage-institution-container .form-actions .btn,.modal-overlay.palette-modal .form-actions .btn,.manage-institution-container .page-header .btn{width:100%}}.manage-logo-preview{max-width:140px;max-height:80px;object-fit:contain;border-radius:8px;border:1px solid #cbd5e1;background:#f8fafc;padding:4px}.manage-logo-fallback{width:80px;height:80px;border-radius:8px;background:#e2e8f0;color:#475569;font-weight:700;font-size:1.5rem;display:inline-flex;align-items:center;justify-content:center;border:1px solid #cbd5e1}.manage-modules-container{max-width:1400px;margin:40px auto;padding:40px;background:linear-gradient(135deg,#f4fcf7,#f9fafb);border-radius:24px;box-shadow:0 10px 40px #00000005,0 1px 3px #00000003;border:1px solid rgba(229,231,235,.6);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif}.manage-modules-container .page-header{margin-bottom:35px}.manage-modules-container .page-title{font-size:2.2rem;font-weight:800;color:#111827;letter-spacing:-.025em;margin-bottom:8px}.manage-modules-container .text-muted{font-size:1rem;color:#4b5563}.manage-modules-container .btn-outline{display:flex;align-items:center;gap:8px;padding:10px 20px;border-radius:10px;border:1px solid #d1d5db;background:#fff;color:#4b5563!important;font-weight:600;font-size:.95rem;cursor:pointer;transition:all .25s ease;box-shadow:0 1px 2px #0000000d}.manage-modules-container .btn-outline:hover{background:#f9fafb;border-color:#9ca3af;color:#111827!important;transform:translateY(-1px);box-shadow:0 4px 6px #0000000d}.modules-tabs-nav{display:flex;background:#f3f4f6;padding:8px;border-radius:16px;gap:8px;margin-bottom:35px;border:1px solid rgba(229,231,235,.5)}.tab-nav-btn{flex:1;padding:14px 24px;border:none!important;background:transparent!important;border-radius:12px!important;font-weight:500;font-size:1.05rem;color:#4b5563!important;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:10px;transition:all .3s cubic-bezier(.4,0,.2,1)!important;outline:none}.tab-nav-btn:hover{background:#2d6a4f0d!important;color:#2d6a4f!important}.tab-nav-btn.active{background:#fff!important;color:#2d6a4f!important;font-weight:700;box-shadow:0 10px 15px -3px #0000000a,0 4px 6px -2px #00000005!important;transform:scale(1.01)}.tab-nav-btn .badge{font-size:.85rem!important;font-weight:600;padding:4px 10px!important;border-radius:9999px!important;background-color:#e5e7eb;color:#4b5563;transition:all .3s ease;min-width:24px;text-align:center}.tab-nav-btn.active .badge{background-color:#2d6a4f!important;color:#fff!important}.section-card{background:#fff;border-radius:20px!important;overflow:hidden;box-shadow:0 4px 20px #00000008;border:1px solid rgba(229,231,235,.7)!important;margin-bottom:35px}.section-card .card-header{background:linear-gradient(135deg,#1b4332,#2d6a4f)!important;padding:24px 32px!important;border-bottom:none!important;box-shadow:0 4px 15px #1b433226;display:flex!important;justify-content:space-between!important;align-items:center!important}.section-card .card-header h5{font-size:1.35rem!important;font-weight:700!important;color:#fff!important;letter-spacing:-.01em;display:flex!important;align-items:center!important}.section-card .card-header .btn-xs{font-size:.9rem!important;font-weight:600!important;padding:8px 20px!important;border-radius:10px!important;cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1);display:inline-flex;align-items:center;justify-content:center}.section-card .card-header .btn-outline-light{border:1.5px solid rgba(255,255,255,.4)!important;background:#ffffff1a!important;color:#fff!important}.section-card .card-header .btn-outline-light:hover{background:#fff!important;color:#2d6a4f!important;border-color:#fff!important;transform:translateY(-2px);box-shadow:0 4px 12px #ffffff26}.section-card .card-header .btn-outline-danger{border:1.5px solid rgba(239,68,68,.4)!important;background:linear-gradient(135deg,#ef4444,#dc2626)!important;color:#fff!important;border-color:transparent!important}.section-card .card-header .btn-outline-danger:hover{transform:translateY(-2px);box-shadow:0 4px 12px #ef44444d;filter:brightness(1.1)}.modules-grid{display:grid;grid-template-columns:repeat(3,1fr)!important;gap:24px!important;padding:32px!important}.module-card-select{padding:24px!important;border:2.5px solid #f3f4f6!important;border-radius:18px!important;cursor:pointer;background:#fff!important;display:flex!important;justify-content:space-between!important;align-items:center!important;transition:all .3s cubic-bezier(.4,0,.2,1)!important;box-shadow:0 4px 6px -1px #00000005,0 2px 4px -1px #00000003!important}.module-card-select:hover{transform:translateY(-4px) scale(1.01);border-color:#d1d5db!important;box-shadow:0 12px 24px -10px #00000014,0 4px 12px -5px #00000008!important}.module-card-select.selected{border-color:#2d6a4f!important;background:#2d6a4f05!important;box-shadow:0 4px 12px #2d6a4f08!important}.module-card-select.selected:hover{box-shadow:0 12px 24px -10px #2d6a4f2e,0 4px 12px -5px #2d6a4f14!important;border-color:#2d6a4f!important}.module-card-select strong{font-size:1.15rem!important;font-weight:700!important;letter-spacing:-.01em;margin-bottom:6px;color:#111827!important;transition:color .2s ease}.module-card-select.selected strong{color:#2d6a4f!important}.module-card-select span{font-size:.875rem!important;color:#6b7280!important;line-height:1.4;display:block}.switch{position:relative;display:inline-block;width:58px;height:32px;flex-shrink:0;margin:0}.switch input{opacity:0;width:0;height:0}.slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:#e5e7eb;transition:all .3s cubic-bezier(.4,0,.2,1);border-radius:32px;box-shadow:inset 0 2px 4px #0000000d}.slider:before{position:absolute;content:"";height:24px;width:24px;left:4px;bottom:4px;background-color:#fff;transition:all .3s cubic-bezier(.4,0,.2,1);border-radius:50%;box-shadow:0 2px 4px #00000026}input:checked+.slider{background-color:#2d6a4f;box-shadow:0 0 12px #2d6a4f59,inset 0 2px 4px #0000000d}input:checked+.slider:before{transform:translate(26px)}.security-title{border-bottom:2px dashed rgba(239,68,68,.2)!important;padding-bottom:12px;font-size:1.3rem!important;font-weight:700!important;color:#b91c1c;display:flex;align-items:center;margin-bottom:20px!important}.security-card{border:1px solid rgba(239,68,68,.15)!important;background:#fef2f24d!important;border-radius:20px!important;box-shadow:0 4px 20px #b91c1c05!important}.security-card .form-label{font-size:.95rem!important;font-weight:600!important;color:#374151!important;margin-bottom:8px!important}.security-card .form-control{border:1.5px solid #d1d5db!important;padding:12px 16px!important;border-radius:10px!important;font-size:1rem!important;background:#fff!important;transition:all .2s ease!important;box-shadow:0 1px 2px #00000005!important}.security-card .form-control:focus{border-color:#2d6a4f!important;box-shadow:0 0 0 4px #2d6a4f1f!important;outline:none!important}.security-card .form-actions .btn-outline{padding:12px 24px!important;border-radius:10px!important;font-weight:600!important;background:#fff!important;border:1.5px solid #d1d5db!important;color:#4b5563!important;transition:all .2s ease}.security-card .form-actions .btn-outline:hover{background:#f9fafb!important;border-color:#9ca3af!important;color:#111827!important;transform:translateY(-1px)}.security-card .form-actions .btn-primary{padding:12px 28px!important;border-radius:10px!important;font-weight:600!important;background:linear-gradient(135deg,#2d6a4f,#1b4332)!important;border:none!important;color:#fff!important;box-shadow:0 4px 12px #2d6a4f33!important;transition:all .25s ease!important;cursor:pointer}.security-card .form-actions .btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 15px #2d6a4f4d!important;filter:brightness(1.05)}.spinner{width:45px;height:45px;border:4px solid rgba(45,106,79,.1);border-top:4px solid #2d6a4f;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto}.loader-text{font-size:1.1rem;font-weight:600;color:#4b5563}@media (max-width: 1024px){.manage-modules-container{padding:24px;margin:20px auto}.modules-grid{grid-template-columns:repeat(2,1fr)!important;gap:20px!important;padding:24px!important}.tab-nav-btn{padding:12px 16px;font-size:.95rem}}@media (max-width: 768px){.modules-tabs-nav{flex-direction:column;gap:4px;border-radius:12px;padding:6px}.tab-nav-btn{justify-content:flex-start;padding:10px 16px}.security-card .row{grid-template-columns:1fr!important;gap:16px}}@media (max-width: 640px){.modules-grid{grid-template-columns:1fr!important;gap:16px!important;padding:16px!important}.manage-modules-container .page-header{flex-direction:column;align-items:flex-start;gap:16px}.manage-modules-container .btn-outline{width:100%;justify-content:center}}.superadmin-navbar{background:linear-gradient(135deg,#0f172a,#1e293b 55%,#334155);color:#fff;padding:10px 20px 8px;min-height:72px;box-shadow:0 10px 28px #0f172a47;position:fixed;top:0;left:0;right:0;z-index:1060;width:100%;box-sizing:border-box;border-bottom:1px solid rgba(255,255,255,.08)}.superadmin-navbar-top{display:flex;align-items:center;justify-content:space-between;gap:14px}.brand-button{display:inline-flex;align-items:center;gap:12px;background:transparent;border:none;color:#fff;padding:0;cursor:pointer}.brand-button i{font-size:1.1rem;width:34px;height:34px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;background:#3b82f638;border:1px solid rgba(96,165,250,.45)}.superadmin-brand-logo{height:36px;width:auto;object-fit:contain;border-radius:6px;border:1px solid rgba(255,255,255,.15)}.brand-texts{display:flex;flex-direction:column;align-items:flex-start;line-height:1.1}.brand-texts h2{margin:0;font-size:1.06rem;font-weight:700;letter-spacing:.2px}.brand-texts span{color:#e2e8f0e6;font-size:.79rem;font-weight:500}.navbar-right{display:flex;align-items:center}.logout-button{background:#ffffff14;color:#fff;border:1px solid rgba(255,255,255,.18);padding:8px 14px;border-radius:10px;cursor:pointer;font-weight:600;display:flex;align-items:center;gap:7px;transition:all .2s ease;font-size:.85rem}.logout-button:hover{background-color:#dc2626;border-color:#ef4444}.logout-button i{font-size:.8rem}.superadmin-tabs{display:flex;align-items:center;gap:10px;margin-top:10px;overflow-x:auto;padding-bottom:2px}.superadmin-tabs::-webkit-scrollbar{display:none}.superadmin-tab{display:inline-flex;align-items:center;gap:7px;color:#e2e8f0eb;text-decoration:none;padding:8px 12px;border-radius:10px;border:1px solid transparent;background:#ffffff0a;font-size:.84rem;font-weight:600;white-space:nowrap;transition:all .2s ease}.superadmin-tab:hover{color:#fff;border-color:#94a3b859;background:#ffffff17}.superadmin-tab.active{color:#e0f2fe;border-color:#60a5fa73;background:linear-gradient(135deg,#2563eb59,#3b82f633)}@media (max-width: 768px){.superadmin-navbar{padding:10px 12px 8px;min-height:68px}.brand-texts h2{font-size:.98rem}.brand-texts span{font-size:.74rem}.logout-button,.superadmin-tab{padding:7px 10px;font-size:.8rem}}@media (max-width: 576px){.superadmin-navbar-top,.brand-button{gap:8px}.brand-button i{width:30px;height:30px;font-size:.95rem}.brand-texts span{display:none}.logout-button{padding:6px 8px;font-size:.76rem;gap:5px}.superadmin-tabs{gap:8px}.superadmin-tab{padding:6px 9px;font-size:.76rem}}.student-elibrary-container{padding:30px;background-color:#fafbfc;min-height:100vh;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.student-elibrary-header{margin-bottom:28px}.student-elibrary-title{font-size:32px;font-weight:800;color:#1e293b;margin:0 0 6px;letter-spacing:-.025em}.student-elibrary-subtitle{font-size:15px;color:#64748b;margin:0;line-height:1.5}.student-alert{padding:12px 16px;border-radius:8px;font-size:14px;font-weight:500;margin-bottom:20px}.student-alert.error{background-color:#fee2e2;color:#b91c1c;border:1px solid #fca5a5}.student-search-bar-row{margin-bottom:24px}.student-search-input{width:100%;padding:14px 20px;border:1px solid #e2e8f0;border-radius:12px;font-size:15px;box-sizing:border-box;background-color:#fff;transition:all .2s ease-in-out;box-shadow:0 1px 3px #0000000d}.student-search-input:focus{outline:none;border-color:#4f46e5;box-shadow:0 0 0 4px #4f46e51a}.student-loading-wrapper{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 0;gap:16px;color:#64748b}.student-loading-ring{width:36px;height:36px;border:3.5px solid #e2e8f0;border-top-color:#4f46e5;border-radius:50%;animation:spin .8s linear infinite}.student-empty-state{text-align:center;padding:60px 20px;border:2px dashed #cbd5e1;border-radius:16px;background-color:#fff;color:#64748b}.student-empty-state h3{font-size:18px;color:#334155;margin:0 0 8px}.student-ebooks-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:24px}.student-ebook-card{background-color:#fff;border-radius:14px;border:1px solid #f1f5f9;overflow:hidden;box-shadow:0 4px 6px -1px #00000005,0 2px 4px -1px #00000003;transition:all .25s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column}.student-ebook-card:hover{transform:translateY(-5px);box-shadow:0 12px 20px -3px #00000012,0 4px 6px -2px #00000008}.student-ebook-cover-wrapper{position:relative;height:280px;background-color:#f8fafc;display:flex;align-items:center;justify-content:center;overflow:hidden}.student-ebook-cover-img{width:100%;height:100%;object-fit:cover;transition:all .3s ease}.student-ebook-cover-placeholder{display:flex;flex-direction:column;align-items:center;color:#94a3b8}.student-ebook-cover-placeholder span{font-size:52px;margin-bottom:8px}.student-read-btn{position:absolute;bottom:16px;left:50%;transform:translate(-50%) translateY(40px);background-color:#4f46e5;color:#fff;border:none;padding:10px 20px;border-radius:30px;font-size:13px;font-weight:600;cursor:pointer;opacity:0;transition:all .25s ease-in-out;box-shadow:0 10px 15px -3px #4f46e54d}.student-ebook-cover-wrapper:hover .student-read-btn{transform:translate(-50%) translateY(0);opacity:1}.student-ebook-cover-wrapper:hover .student-ebook-cover-img{transform:scale(1.05)}.student-ebook-info{padding:16px;display:flex;flex-direction:column;flex-grow:1}.student-ebook-title{font-size:15px;font-weight:700;color:#1e293b;margin:0 0 6px;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;height:42px}.student-ebook-authors{font-size:13px;color:#64748b;margin:0 0 4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.student-ebook-pub{font-size:11px;color:#94a3b8;margin:0 0 10px}.student-ebook-domains{display:flex;flex-wrap:wrap;gap:4px;margin-top:auto}.student-domain-pill{font-size:10px;font-weight:600;background-color:#4f46e514;color:#4f46e5;padding:2px 8px;border-radius:9999px}.student-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#0f172a99;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.student-modal-dialog{background-color:#fff;border-radius:16px;width:90%;max-width:960px;height:85vh;display:flex;flex-direction:column;box-shadow:0 25px 50px -12px #00000040;overflow:hidden}.student-modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;border-bottom:1px solid #e2e8f0}.student-modal-title-col h3{margin:0 0 2px;font-size:18px;color:#0f172a;font-weight:700}.student-modal-title-col span{font-size:12px;color:#64748b}.student-close-btn{background:none;border:none;font-size:20px;color:#94a3b8;cursor:pointer;padding:4px;transition:color .15s ease}.student-close-btn:hover{color:#4f46e5}.student-modal-body{flex-grow:1;background-color:#525659}.student-pdf-iframe{border:none}.student-modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid #e2e8f0;background-color:#f8fafc}.student-btn-primary{background-color:#4f46e5;color:#fff;text-decoration:none;padding:10px 20px;font-size:14px;font-weight:600;border-radius:8px;border:none;cursor:pointer;transition:background-color .15s ease}.student-btn-primary:hover{background-color:#4338ca}.student-btn-outline{background-color:#fff;color:#64748b;border:1px solid #cbd5e1;padding:10px 20px;font-size:14px;font-weight:600;border-radius:8px;cursor:pointer;transition:all .15s ease}.student-btn-outline:hover{background-color:#f1f5f9;color:#334155;border-color:#94a3b8}@media (max-width: 640px){.student-ebooks-grid{grid-template-columns:1fr}.student-elibrary-container{padding:16px}}.faculty-elibrary-container{padding:30px;background-color:#fafbfc;min-height:100vh;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.faculty-elibrary-header{margin-bottom:28px}.faculty-elibrary-title{font-size:32px;font-weight:800;color:#1e293b;margin:0 0 6px;letter-spacing:-.025em}.faculty-elibrary-subtitle{font-size:15px;color:#64748b;margin:0;line-height:1.5}.faculty-alert{padding:12px 16px;border-radius:8px;font-size:14px;font-weight:500;margin-bottom:20px}.faculty-alert.error{background-color:#fee2e2;color:#b91c1c;border:1px solid #fca5a5}.faculty-filters-card{background-color:#fff;border-radius:12px;border:1px solid #e2e8f0;padding:20px;display:grid;grid-template-columns:1fr 1fr 1fr 1.5fr;gap:16px;margin-bottom:28px;box-shadow:0 1px 3px #0000000d}.filter-input-control{display:flex;flex-direction:column;gap:6px}.filter-input-control label{font-size:12px;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.05em}.filter-input-control select,.filter-input-control input{padding:10px 12px;border:1px solid #cbd5e1;border-radius:8px;font-size:14px;color:#334155;outline:none;background-color:#fff;transition:all .15s ease-in-out}.filter-input-control select:focus,.filter-input-control input:focus{border-color:#4f46e5;box-shadow:0 0 0 3px #4f46e514}.faculty-loading-wrapper{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 0;gap:16px;color:#64748b}.faculty-loading-ring{width:36px;height:36px;border:3.5px solid #e2e8f0;border-top-color:#4f46e5;border-radius:50%;animation:spin .8s linear infinite}.faculty-empty-state{text-align:center;padding:60px 20px;border:2px dashed #cbd5e1;border-radius:16px;background-color:#fff;color:#64748b}.faculty-empty-state h3{font-size:18px;color:#334155;margin:0 0 8px}.faculty-ebooks-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:24px}.faculty-ebook-card{background-color:#fff;border-radius:14px;border:1px solid #f1f5f9;overflow:hidden;box-shadow:0 4px 6px -1px #00000005,0 2px 4px -1px #00000003;transition:all .25s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column}.faculty-ebook-card:hover{transform:translateY(-5px);box-shadow:0 12px 20px -3px #00000012,0 4px 6px -2px #00000008}.faculty-ebook-cover-wrapper{position:relative;height:280px;background-color:#f8fafc;display:flex;align-items:center;justify-content:center;overflow:hidden}.faculty-ebook-cover-img{width:100%;height:100%;object-fit:cover;transition:all .3s ease}.faculty-ebook-cover-placeholder{display:flex;flex-direction:column;align-items:center;color:#94a3b8}.faculty-ebook-cover-placeholder span{font-size:52px;margin-bottom:8px}.faculty-read-btn{position:absolute;bottom:16px;left:50%;transform:translate(-50%) translateY(40px);background-color:#4f46e5;color:#fff;border:none;padding:10px 20px;border-radius:30px;font-size:13px;font-weight:600;cursor:pointer;opacity:0;transition:all .25s ease-in-out;box-shadow:0 10px 15px -3px #4f46e54d}.faculty-ebook-cover-wrapper:hover .faculty-read-btn{transform:translate(-50%) translateY(0);opacity:1}.faculty-ebook-cover-wrapper:hover .faculty-ebook-cover-img{transform:scale(1.05)}.faculty-ebook-info{padding:16px;display:flex;flex-direction:column;flex-grow:1}.faculty-ebook-title{font-size:15px;font-weight:700;color:#1e293b;margin:0 0 6px;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;height:42px}.faculty-ebook-authors{font-size:13px;color:#64748b;margin:0 0 4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.faculty-ebook-pub{font-size:11px;color:#94a3b8;margin:0 0 10px}.faculty-ebook-domains{display:flex;flex-wrap:wrap;gap:4px;margin-top:auto}.faculty-domain-pill{font-size:10px;font-weight:600;background-color:#4f46e514;color:#4f46e5;padding:2px 8px;border-radius:9999px}.faculty-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#0f172a99;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.faculty-modal-dialog{background-color:#fff;border-radius:16px;width:90%;max-width:960px;height:85vh;display:flex;flex-direction:column;box-shadow:0 25px 50px -12px #00000040;overflow:hidden}.faculty-modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;border-bottom:1px solid #e2e8f0}.faculty-modal-title-col h3{margin:0 0 2px;font-size:18px;color:#0f172a;font-weight:700}.faculty-modal-title-col span{font-size:12px;color:#64748b}.faculty-close-btn{background:none;border:none;font-size:20px;color:#94a3b8;cursor:pointer;padding:4px;transition:color .15s ease}.faculty-close-btn:hover{color:#4f46e5}.faculty-modal-body{flex-grow:1;background-color:#525659}.faculty-pdf-iframe{border:none}.faculty-modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid #e2e8f0;background-color:#f8fafc}.faculty-btn-primary{background-color:#4f46e5;color:#fff;text-decoration:none;padding:10px 20px;font-size:14px;font-weight:600;border-radius:8px;border:none;cursor:pointer;transition:background-color .15s ease}.faculty-btn-primary:hover{background-color:#4338ca}.faculty-btn-outline{background-color:#fff;color:#64748b;border:1px solid #cbd5e1;padding:10px 20px;font-size:14px;font-weight:600;border-radius:8px;cursor:pointer;transition:all .15s ease}.faculty-btn-outline:hover{background-color:#f1f5f9;color:#334155;border-color:#94a3b8}@media (max-width: 1024px){.faculty-filters-card{grid-template-columns:1fr 1fr}}@media (max-width: 640px){.faculty-ebooks-grid,.faculty-filters-card{grid-template-columns:1fr}.faculty-elibrary-container{padding:16px}}.elibrary-preview-overlay{position:fixed!important;top:0!important;left:0!important;right:0!important;bottom:0!important;width:100vw!important;height:100vh!important;padding:0!important;margin:0!important;z-index:999999!important;background-color:#0f172ad9!important;display:flex!important;align-items:center!important;justify-content:center!important}.full-screen-preview{width:100vw!important;height:100vh!important;max-width:100vw!important;max-height:100vh!important;border-radius:0!important;margin:0!important;border:none!important;box-shadow:none!important;display:flex!important;flex-direction:column!important}:root{--header-height: 60px;--sidebar-width: 240px;--page-bg: #f8f9fa;--surface-color: #ffffff;--border-color: #dee2e6;--transition-speed: .3s;--app-header-bg: #2e7d32;--primary-accent: #10b981;--primary-accent-dark: #059669}button.btn-primary,.btn-primary{color:var(--text-on-primary, #ffffff)!important;background:var(--primary-accent, #10b981)!important}button.btn-primary:hover,.btn-primary:hover{background:var(--primary-accent-dark, #059669)!important;color:var(--text-on-primary, #ffffff)!important}.btn-outline,button.btn-outline{color:var(--primary-accent, #10b981)!important;border-color:var(--primary-accent, #10b981)!important}.btn-danger,button.btn-danger,.btn-warning,button.btn-warning,.badge-warning{color:var(--text-on-primary, #ffffff)!important}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;background-color:var(--page-bg);overflow:hidden;height:100vh}.ats-page,.sah-page,.attendance-main-content,.theory-page,.practical-page,.ea1-page,.ea2-page,.eia-page,.edit-practical-attendance-container,.edit-practical-attendance-page-container,.edit-attendance-container{font-family:Nunito Sans,Segoe UI,sans-serif!important}.ats-hero,.sah-header,.ea1-hero,.ea2-hero,.eia-hero,.theory-attendance-container,.theory-card,.practical-card,.record-details-card,.edit-practical-attendance-card,.eia-form,.eia-context-card,.ea2-record-card,.ea1-card,.ats-card,.sah-card,.form-box{border-radius:16px!important;border-color:#d7e5f8!important;box-shadow:0 10px 24px #122b5214!important}.ats-hero h2,.sah-header h1,.ea1-hero-title,.ea2-hero-title,.eia-hero-title,.theory-title,.practical-title,.page-title,.record-title,.edit-practical-attendance-heading{letter-spacing:-.2px;font-weight:800!important}@media (max-width: 768px){body{overflow:visible!important}.secondary-sidebar.visible{transform:translate(0)!important;opacity:1!important;visibility:visible!important;z-index:9999!important;pointer-events:auto!important}}.app-container{display:flex;min-height:100vh}.main-content-wrapper{flex-grow:1;display:flex;flex-direction:column;overflow-y:hidden;overflow-x:visible;transition:margin-left var(--transition-speed) ease;margin-left:calc(var(--sidebar-width) + 1rem);margin-top:60px}.superadmin-page .main-content-wrapper{margin-top:0;padding-top:112px;overflow-x:hidden;height:100vh}.content-area{flex-grow:1;overflow-y:auto;padding:1.5rem 1.5rem 1.5rem 2rem;box-sizing:border-box}.scrollable-content{flex-grow:1;overflow-y:auto;height:calc(100vh - var(--header-height));box-sizing:border-box;padding-top:0}.superadmin-page .scrollable-content{height:calc(100vh - 112px);overflow-x:hidden;padding-bottom:20px}.admin-page .main-content-wrapper{margin-top:60px;padding-top:0;margin-left:calc(var(--sidebar-width, 280px) + 1rem);transition:margin-left var(--transition-speed) ease}.admin-page.sidebar-collapsed .main-content-wrapper{margin-left:0}.admin-page .scrollable-content{padding-top:0;padding-bottom:220px;overflow-y:auto;height:calc(100vh - 60px);padding-left:2rem}.admin-page.admin-dashboard-page .scrollable-content{overflow-y:visible;height:auto}.office-page .main-content-wrapper{padding-top:0;margin-top:0}@media (min-width: 769px){.office-page .main-content-wrapper{margin-left:280px!important;width:calc(100% - 280px)!important;box-sizing:border-box}}.office-page .scrollable-content{padding-top:0}.faculty-page{background-color:#eef2f7!important}.faculty-page .main-content-wrapper,.faculty-page .scrollable-content{background-color:#eef2f7!important;background-image:linear-gradient(180deg,#f3f6fa,#e9eef5)!important}.admin-content{padding:24px;max-width:1200px;margin:0 auto;height:100%;box-sizing:border-box}.admin-content .loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center}.admin-content .loading-spinner{width:40px;height:40px;border:4px solid #f3f4f6;border-top:4px solid #059669;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (max-width: 768px){.superadmin-page .scrollable-content{height:calc(100vh - 104px)!important;padding-bottom:20px!important}}@media (min-width: 769px){.app-container.sidebar-collapsed .main-content-wrapper{margin-left:0}}.app-container.sidebar-collapsed{--sidebar-width: 0px !important}@media (max-width: 768px){.main-content-wrapper{margin-left:0!important;width:100%!important;margin-top:0!important;padding-top:var(--header-height)!important}.scrollable-content{height:100vh!important;padding-top:0!important;overflow-x:auto!important}.content-area{padding:1rem!important}.superadmin-page .main-content-wrapper{margin-top:0!important;padding-top:104px!important}.admin-page .main-content-wrapper{margin-top:0!important;padding-top:60px!important}.admin-page .scrollable-content{height:calc(100vh - 60px)!important;padding-bottom:140px!important}.admin-page.admin-dashboard-page .scrollable-content{height:auto!important;overflow-y:visible!important}.timetable-layout,.student-layout,.teaching-layout{overflow-y:auto!important;padding-top:50px!important;width:100%!important;max-width:100%!important}.timetable-main-content,.student-main-content,.teaching-main-content{margin-left:0!important;width:100%!important;max-width:100%!important;padding-left:12px!important;padding-right:12px!important;box-sizing:border-box!important}.app-container{overflow:visible!important}}.plan-container:not(.timetable-layout .plan-container){padding:40px;background-color:#fefefe;border:1px solid #ccc;border-radius:12px;margin:20px 0;box-shadow:0 2px 8px #0000001a}table:not(.timetable){width:100%;border-collapse:collapse}.main-content-wrapper .container-fluid{padding-left:15px!important;padding-right:15px!important;margin-left:0!important;margin-right:0!important}.scrollable-content>*{margin-left:0!important}@media print{html,body,#root,.app-container,.main-content-wrapper,.scrollable-content,.content-area,.page-wrapper,.scroll-container,.dashboard-layout,.app,.layout,.main-content,.content-wrapper,.page-container{overflow:visible!important;height:auto!important;min-height:0!important;max-height:none!important;margin:0!important;padding:0!important;position:static!important;transform:none!important;contain:none!important;display:block!important;width:100%!important;max-width:100%!important;box-shadow:none!important;border:none!important;background:transparent!important}.sidebar,.main-sidebar,.admin-sidebar,.office-sidebar,.secondary-sidebar,.sidebar-overlay,.header,.admin-header,.superadmin-navbar,.no-print,.print-button,.back-button,.navigation,.floating-buttons,.header-buttons,.vat2-actions,button,.modal-backdrop,.modal{display:none!important}@page landscape-page{size:A4 landscape;margin:.6in .4in}@page portrait-page{size:A4 portrait;margin:10mm}.k3-print-container,.k4-print-container,.k5-page,.attendance-print-container,.msbte-print-sheet{page:landscape-page}.Ciaan-print-page{page:portrait-page}table{width:100%!important;table-layout:fixed!important;page-break-inside:auto!important}tr{page-break-inside:avoid!important}thead{display:table-header-group!important}tfoot{display:table-footer-group!important}body,#root,.app-container,.main-content-wrapper,.scrollable-content,.k3-print-container,.k4-print-container,.k5-page,.attendance-print-container,.msbte-print-sheet,.k3-sheet,.k4-print-sheet,.k5-sheet{color:#000!important;background:#fff!important;background-color:#fff!important;visibility:visible!important;opacity:1!important}.k3-sheet *,.k4-print-sheet *,.k5-sheet *,.msbte-print-sheet *,table *,tr,th,td,div,span,p,strong,h1,h2,h3,h4,h5,h6{color:#000!important;background:transparent!important;background-color:transparent!important;visibility:visible!important}}.attendance-main-content{flex:1;display:flex;justify-content:center;align-items:flex-start;padding:0 15px!important;box-sizing:border-box;margin:0;width:100%;max-width:none}.btn.submit,.btn-success,.pagination .page-item.active .page-link{background-color:var(--app-header-bg)!important;border-color:var(--app-header-bg)!important;color:#fff!important}.btn.submit:hover,.btn-success:hover,.pagination .page-item.active .page-link:hover{background-color:var(--primary-accent-dark)!important;border-color:var(--primary-accent-dark)!important;color:#fff!important}.attendance-status-present,.attendance-marker.present,.status-present{background-color:var(--app-header-bg)!important;border-color:var(--app-header-bg)!important}h1,h2,h3,h4,h5,h6{color:inherit}.text-success{color:var(--app-header-bg)!important}.bg-success{background-color:var(--app-header-bg)!important}.border-success{border-color:var(--app-header-bg)!important}.page-title,.course-form-container h1,.modal-header,.submit-btn,.add-btn{background-color:var(--app-header-bg)!important;color:#fff!important;border-color:var(--app-header-bg)!important}.submit-btn:hover,.add-btn:hover,.course-form-container button[type=submit]:hover{background-color:var(--primary-accent-dark)!important;border-color:var(--primary-accent-dark)!important}.ct-Ciaan-cards-container .ct-header,.ct-dashboard-header,.ct-marks-form .form-header,.ct-card-header,.ct-number-card .ct-card-header{background:var(--app-header-bg)!important}.ct-Ciaan-card:hover,.ct-number-card:hover{border-color:var(--primary-accent)!important;box-shadow:0 8px 25px #667eea33!important}.subject-name,.ct-stat-value,.detail-value,.student-marks{color:var(--primary-accent-dark)!important}.stat-card,.new-ct-btn,.save-btn,.retry-btn,.refresh-btn,.add-first-ct-btn,.select-btn{background:var(--primary-accent)!important}.stat-card:hover,.new-ct-btn:hover,.save-btn:hover:not(:disabled),.retry-btn:hover,.refresh-btn:hover,.add-first-ct-btn:hover,.select-btn:hover{background:var(--primary-accent-dark)!important}.student-app-container{width:100vw;height:100vh;overflow:hidden}.app-container.student-layout .sidebar{display:none}.app-container.student-layout .main-content-wrapper{margin-left:0}.app-container.student-layout .header .menu-toggle{display:none}/*! tailwindcss v4.1.11 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-space-x-reverse:0;--tw-border-style:solid;--tw-gradient-position:initial;--tw-gradient-from:#0000;--tw-gradient-via:#0000;--tw-gradient-to:#0000;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-ease:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--color-red-100:oklch(93.6% .032 17.717);--color-red-500:oklch(63.7% .237 25.331);--color-red-700:oklch(50.5% .213 27.518);--color-green-100:oklch(96.2% .044 156.743);--color-green-700:oklch(52.7% .154 150.069);--color-emerald-50:oklch(97.9% .021 166.113);--color-emerald-100:oklch(95% .052 163.051);--color-emerald-200:oklch(90.5% .093 164.15);--color-emerald-400:oklch(76.5% .177 163.223);--color-emerald-500:oklch(69.6% .17 162.48);--color-emerald-600:oklch(59.6% .145 163.225);--color-emerald-700:oklch(50.8% .118 165.612);--color-emerald-800:oklch(43.2% .095 166.913);--color-emerald-950:oklch(26.2% .051 172.552);--color-teal-300:oklch(85.5% .138 181.071);--color-teal-400:oklch(77.7% .152 181.912);--color-teal-500:oklch(70.4% .14 182.503);--color-teal-600:oklch(60% .118 184.704);--color-blue-500:oklch(62.3% .214 259.815);--color-blue-600:oklch(54.6% .245 262.881);--color-blue-700:oklch(48.8% .243 264.376);--color-slate-100:oklch(96.8% .007 247.896);--color-slate-200:oklch(92.9% .013 255.508);--color-slate-300:oklch(86.9% .022 252.894);--color-slate-400:oklch(70.4% .04 256.788);--color-slate-500:oklch(55.4% .046 257.417);--color-slate-600:oklch(44.6% .043 257.281);--color-slate-700:oklch(37.2% .044 257.287);--color-slate-800:oklch(27.9% .041 260.031);--color-slate-900:oklch(20.8% .042 265.755);--color-slate-950:oklch(12.9% .042 264.695);--color-gray-50:oklch(98.5% .002 247.839);--color-gray-100:oklch(96.7% .003 264.542);--color-gray-200:oklch(92.8% .006 264.531);--color-gray-300:oklch(87.2% .01 258.338);--color-gray-500:oklch(55.1% .027 264.364);--color-gray-600:oklch(44.6% .03 256.802);--color-gray-700:oklch(37.3% .034 259.733);--color-gray-800:oklch(27.8% .033 256.848);--color-white:#fff;--spacing:.25rem;--container-lg:32rem;--container-xl:36rem;--container-2xl:42rem;--container-3xl:48rem;--container-7xl:80rem;--text-xs:.75rem;--text-xs--line-height:calc(1/.75);--text-sm:.875rem;--text-sm--line-height:calc(1.25/.875);--text-base:1rem;--text-base--line-height: 1.5 ;--text-lg:1.125rem;--text-lg--line-height:calc(1.75/1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75/1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2/1.5);--text-3xl:1.875rem;--text-3xl--line-height: 1.2 ;--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5/2.25);--text-5xl:3rem;--text-5xl--line-height:1;--text-6xl:3.75rem;--text-6xl--line-height:1;--font-weight-light:300;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-extrabold:800;--font-weight-black:900;--tracking-tight:-.025em;--tracking-wider:.05em;--tracking-widest:.1em;--leading-tight:1.25;--leading-snug:1.375;--leading-relaxed:1.625;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--radius-2xl:1rem;--radius-3xl:1.5rem;--shadow-sm:0 1px 3px 0 #0000001a,0 1px 2px -1px #0000001a;--shadow-md:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;--shadow-xl:0 20px 25px -5px #0000001a,0 8px 10px -6px #0000001a;--drop-shadow-sm:0 1px 2px #00000026;--drop-shadow-2xl:0 25px 25px #00000026;--ease-out:cubic-bezier(0,0,.2,1);--ease-in-out:cubic-bezier(.4,0,.2,1);--animate-spin:spin 1s linear infinite;--animate-ping:ping 1s cubic-bezier(0,0,.2,1)infinite;--animate-pulse:pulse 2s cubic-bezier(.4,0,.6,1)infinite;--animate-bounce:bounce 1s infinite;--blur-md:12px;--blur-xl:24px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-primary-green:#2e7d32;--color-secondary-green:#10b981;--color-light-green:#dcfce7;--color-dark-text:#0f172a;--color-secondary-text:#64748b;--color-bg-secondary:#f8fafc}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;-moz-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;-moz-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.pointer-events-none{pointer-events:none}.collapse{visibility:collapse}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.-inset-1{inset:calc(var(--spacing)*-1)}.-inset-4{inset:calc(var(--spacing)*-4)}.inset-0{inset:calc(var(--spacing)*0)}.end-0{inset-inline-end:calc(var(--spacing)*0)}.-top-6{top:calc(var(--spacing)*-6)}.-top-10{top:calc(var(--spacing)*-10)}.-top-12{top:calc(var(--spacing)*-12)}.top-0{top:calc(var(--spacing)*0)}.top-1\/4{top:25%}.top-4{top:calc(var(--spacing)*4)}.top-10{top:calc(var(--spacing)*10)}.top-12{top:calc(var(--spacing)*12)}.top-\[-45px\]{top:-45px}.top-\[180px\]{top:180px}.top-full{top:100%}.-right-3{right:calc(var(--spacing)*-3)}.-right-6{right:calc(var(--spacing)*-6)}.right-0{right:calc(var(--spacing)*0)}.right-1\/3{right:33.3333%}.right-1\/4{right:25%}.right-2{right:calc(var(--spacing)*2)}.right-4{right:calc(var(--spacing)*4)}.right-6{right:calc(var(--spacing)*6)}.right-\[-45px\]{right:-45px}.-bottom-3{bottom:calc(var(--spacing)*-3)}.-bottom-6{bottom:calc(var(--spacing)*-6)}.-bottom-8{bottom:calc(var(--spacing)*-8)}.-bottom-20{bottom:calc(var(--spacing)*-20)}.bottom-0{bottom:calc(var(--spacing)*0)}.bottom-1\/4{bottom:25%}.bottom-4{bottom:calc(var(--spacing)*4)}.bottom-6{bottom:calc(var(--spacing)*6)}.bottom-\[10\%\]{bottom:10%}.-left-6{left:calc(var(--spacing)*-6)}.-left-20{left:calc(var(--spacing)*-20)}.left-0{left:calc(var(--spacing)*0)}.left-1\/2{left:50%}.left-1\/3{left:33.3333%}.left-1\/4{left:25%}.left-2{left:calc(var(--spacing)*2)}.left-6{left:calc(var(--spacing)*6)}.left-8{left:calc(var(--spacing)*8)}.left-\[-45px\]{left:-45px}.-z-10{z-index:-10}.z-3{z-index:3}.z-10{z-index:10}.z-20{z-index:20}.z-50{z-index:50}.col-4{grid-column:4}.col-8{grid-column:8}.col-12{grid-column:12}.col-auto{grid-column:auto}.col-span-1{grid-column:span 1/span 1}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.m-0{margin:calc(var(--spacing)*0)}.mx-1{margin-inline:calc(var(--spacing)*1)}.mx-2{margin-inline:calc(var(--spacing)*2)}.mx-4{margin-inline:calc(var(--spacing)*4)}.mx-auto{margin-inline:auto}.my-0{margin-block:calc(var(--spacing)*0)}.my-2{margin-block:calc(var(--spacing)*2)}.my-3{margin-block:calc(var(--spacing)*3)}.my-4{margin-block:calc(var(--spacing)*4)}.my-28{margin-block:calc(var(--spacing)*28)}.ms-1{margin-inline-start:calc(var(--spacing)*1)}.ms-2{margin-inline-start:calc(var(--spacing)*2)}.ms-3{margin-inline-start:calc(var(--spacing)*3)}.ms-auto{margin-inline-start:auto}.me-1{margin-inline-end:calc(var(--spacing)*1)}.me-2{margin-inline-end:calc(var(--spacing)*2)}.me-3{margin-inline-end:calc(var(--spacing)*3)}.mt-0\.5{margin-top:calc(var(--spacing)*.5)}.mt-1{margin-top:calc(var(--spacing)*1)}.mt-2{margin-top:calc(var(--spacing)*2)}.mt-2\.5{margin-top:calc(var(--spacing)*2.5)}.mt-3{margin-top:calc(var(--spacing)*3)}.mt-4{margin-top:calc(var(--spacing)*4)}.mt-5{margin-top:calc(var(--spacing)*5)}.mt-6{margin-top:calc(var(--spacing)*6)}.mt-8{margin-top:calc(var(--spacing)*8)}.mt-10{margin-top:calc(var(--spacing)*10)}.mt-12{margin-top:calc(var(--spacing)*12)}.mt-auto{margin-top:auto}.mr-1{margin-right:calc(var(--spacing)*1)}.mr-2{margin-right:calc(var(--spacing)*2)}.mb-0{margin-bottom:calc(var(--spacing)*0)}.mb-1{margin-bottom:calc(var(--spacing)*1)}.mb-2{margin-bottom:calc(var(--spacing)*2)}.mb-3{margin-bottom:calc(var(--spacing)*3)}.mb-4{margin-bottom:calc(var(--spacing)*4)}.mb-5{margin-bottom:calc(var(--spacing)*5)}.mb-6{margin-bottom:calc(var(--spacing)*6)}.mb-8{margin-bottom:calc(var(--spacing)*8)}.mb-16{margin-bottom:calc(var(--spacing)*16)}.mb-24{margin-bottom:calc(var(--spacing)*24)}.ml-1{margin-left:calc(var(--spacing)*1)}.ml-4{margin-left:calc(var(--spacing)*4)}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.table-cell{display:table-cell}.table-header-group{display:table-header-group}.table-row{display:table-row}.aspect-\[4\/3\]{aspect-ratio:4/3}.h-1\.5{height:calc(var(--spacing)*1.5)}.h-2{height:calc(var(--spacing)*2)}.h-3{height:calc(var(--spacing)*3)}.h-3\.5{height:calc(var(--spacing)*3.5)}.h-4{height:calc(var(--spacing)*4)}.h-5{height:calc(var(--spacing)*5)}.h-5\.5{height:calc(var(--spacing)*5.5)}.h-6{height:calc(var(--spacing)*6)}.h-6\.5{height:calc(var(--spacing)*6.5)}.h-7{height:calc(var(--spacing)*7)}.h-8{height:calc(var(--spacing)*8)}.h-10{height:calc(var(--spacing)*10)}.h-11{height:calc(var(--spacing)*11)}.h-12{height:calc(var(--spacing)*12)}.h-14{height:calc(var(--spacing)*14)}.h-16{height:calc(var(--spacing)*16)}.h-20{height:calc(var(--spacing)*20)}.h-100{height:calc(var(--spacing)*100)}.h-\[60px\]{height:60px}.h-\[95\%\]{height:95%}.h-\[250px\]{height:250px}.h-\[300px\]{height:300px}.h-\[320px\]{height:320px}.h-\[350px\]{height:350px}.h-\[380px\]{height:380px}.h-\[390px\]{height:390px}.h-\[400px\]{height:400px}.h-\[420px\]{height:420px}.h-\[450px\]{height:450px}.h-full{height:100%}.min-h-\[340px\]{min-height:340px}.min-h-\[440px\]{min-height:440px}.min-h-\[480px\]{min-height:480px}.min-h-screen{min-height:100vh}.w-1\.5{width:calc(var(--spacing)*1.5)}.w-2{width:calc(var(--spacing)*2)}.w-3{width:calc(var(--spacing)*3)}.w-3\.5{width:calc(var(--spacing)*3.5)}.w-4{width:calc(var(--spacing)*4)}.w-5{width:calc(var(--spacing)*5)}.w-5\.5{width:calc(var(--spacing)*5.5)}.w-6{width:calc(var(--spacing)*6)}.w-6\.5{width:calc(var(--spacing)*6.5)}.w-7{width:calc(var(--spacing)*7)}.w-8{width:calc(var(--spacing)*8)}.w-10{width:calc(var(--spacing)*10)}.w-11{width:calc(var(--spacing)*11)}.w-12{width:calc(var(--spacing)*12)}.w-14{width:calc(var(--spacing)*14)}.w-16{width:calc(var(--spacing)*16)}.w-20{width:calc(var(--spacing)*20)}.w-52{width:calc(var(--spacing)*52)}.w-56{width:calc(var(--spacing)*56)}.w-100{width:calc(var(--spacing)*100)}.w-\[250px\]{width:250px}.w-\[300px\]{width:300px}.w-\[320px\]{width:320px}.w-\[350px\]{width:350px}.w-\[400px\]{width:400px}.w-\[420px\]{width:420px}.w-auto{width:auto}.w-fit{width:fit-content}.w-full{width:100%}.w-max{width:max-content}.max-w-2xl{max-width:var(--container-2xl)}.max-w-3xl{max-width:var(--container-3xl)}.max-w-7xl{max-width:var(--container-7xl)}.max-w-\[70\%\]{max-width:70%}.max-w-\[80\%\]{max-width:80%}.max-w-\[200px\]{max-width:200px}.max-w-\[280px\]{max-width:280px}.max-w-\[400px\]{max-width:400px}.max-w-\[460px\]{max-width:460px}.max-w-\[500px\]{max-width:500px}.max-w-\[1380px\]{max-width:1380px}.max-w-lg{max-width:var(--container-lg)}.max-w-xl{max-width:var(--container-xl)}.flex-1{flex:1}.flex-shrink{flex-shrink:1}.flex-shrink-0{flex-shrink:0}.flex-grow,.flex-grow-1,.grow{flex-grow:1}.border-collapse{border-collapse:collapse}.-translate-x-1\/2{--tw-translate-x: -50% ;translate:var(--tw-translate-x)var(--tw-translate-y)}.translate-y-2{--tw-translate-y:calc(var(--spacing)*2);translate:var(--tw-translate-x)var(--tw-translate-y)}.translate-y-8{--tw-translate-y:calc(var(--spacing)*8);translate:var(--tw-translate-x)var(--tw-translate-y)}.scale-100{--tw-scale-x:100%;--tw-scale-y:100%;--tw-scale-z:100%;scale:var(--tw-scale-x)var(--tw-scale-y)}.-rotate-90{rotate:-90deg}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.animate-bounce{animation:var(--animate-bounce)}.animate-ping{animation:var(--animate-ping)}.animate-pulse{animation:var(--animate-pulse)}.animate-spin{animation:var(--animate-spin)}.cursor-default{cursor:default}.cursor-pointer{cursor:pointer}.resize{resize:both}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-row{flex-direction:row}.flex-wrap{flex-wrap:wrap}.items-baseline{align-items:baseline}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.items-stretch{align-items:stretch}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-1{gap:calc(var(--spacing)*1)}.gap-1\.5{gap:calc(var(--spacing)*1.5)}.gap-2{gap:calc(var(--spacing)*2)}.gap-2\.5{gap:calc(var(--spacing)*2.5)}.gap-3{gap:calc(var(--spacing)*3)}.gap-3\.5{gap:calc(var(--spacing)*3.5)}.gap-4{gap:calc(var(--spacing)*4)}.gap-6{gap:calc(var(--spacing)*6)}.gap-8{gap:calc(var(--spacing)*8)}.gap-10{gap:calc(var(--spacing)*10)}.gap-12{gap:calc(var(--spacing)*12)}.gap-24{gap:calc(var(--spacing)*24)}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*1)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*1)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*2)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*2)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*2.5)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*2.5)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-3\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*3.5)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*3.5)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*5)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*5)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-6>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*6)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*6)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-8>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*8)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*8)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-x-3>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(calc(var(--spacing)*3)*var(--tw-space-x-reverse));margin-inline-end:calc(calc(var(--spacing)*3)*calc(1 - var(--tw-space-x-reverse)))}.gap-y-4{row-gap:calc(var(--spacing)*4)}.self-center{align-self:center}.self-start{align-self:flex-start}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-3xl{border-radius:var(--radius-3xl)}.rounded-\[30\.5px\]{border-radius:30.5px}.rounded-\[32px\]{border-radius:32px}.rounded-\[40px\]{border-radius:40px}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-tl-3xl{border-top-left-radius:var(--radius-3xl)}.rounded-tl-sm{border-top-left-radius:var(--radius-sm)}.rounded-tr-sm{border-top-right-radius:var(--radius-sm)}.rounded-br-3xl{border-bottom-right-radius:var(--radius-3xl)}.rounded-br-sm{border-bottom-right-radius:var(--radius-sm)}.rounded-bl-sm{border-bottom-left-radius:var(--radius-sm)}.border{border-style:var(--tw-border-style);border-width:1px}.border-0{border-style:var(--tw-border-style);border-width:0}.border-1{border-style:var(--tw-border-style);border-width:1px}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-3{border-style:var(--tw-border-style);border-width:3px}.border-4{border-style:var(--tw-border-style);border-width:4px}.border-5{border-style:var(--tw-border-style);border-width:5px}.border-y{border-block-style:var(--tw-border-style);border-block-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-t-2{border-top-style:var(--tw-border-style);border-top-width:2px}.border-r-2{border-right-style:var(--tw-border-style);border-right-width:2px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-b-2{border-bottom-style:var(--tw-border-style);border-bottom-width:2px}.border-l-2{border-left-style:var(--tw-border-style);border-left-width:2px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-none{--tw-border-style:none;border-style:none}.border-emerald-50{border-color:var(--color-emerald-50)}.border-emerald-100{border-color:var(--color-emerald-100)}.border-emerald-100\/30{border-color:#d0fae54d}@supports (color:color-mix(in lab,red,red)){.border-emerald-100\/30{border-color:color-mix(in oklab,var(--color-emerald-100)30%,transparent)}}.border-emerald-100\/50{border-color:#d0fae580}@supports (color:color-mix(in lab,red,red)){.border-emerald-100\/50{border-color:color-mix(in oklab,var(--color-emerald-100)50%,transparent)}}.border-emerald-100\/60{border-color:#d0fae599}@supports (color:color-mix(in lab,red,red)){.border-emerald-100\/60{border-color:color-mix(in oklab,var(--color-emerald-100)60%,transparent)}}.border-emerald-200\/50{border-color:#a4f4cf80}@supports (color:color-mix(in lab,red,red)){.border-emerald-200\/50{border-color:color-mix(in oklab,var(--color-emerald-200)50%,transparent)}}.border-gray-100{border-color:var(--color-gray-100)}.border-gray-200{border-color:var(--color-gray-200)}.border-gray-300{border-color:var(--color-gray-300)}.border-light-green\/10{border-color:#dcfce71a}@supports (color:color-mix(in lab,red,red)){.border-light-green\/10{border-color:color-mix(in oklab,var(--color-light-green)10%,transparent)}}.border-light-green\/20{border-color:#dcfce733}@supports (color:color-mix(in lab,red,red)){.border-light-green\/20{border-color:color-mix(in oklab,var(--color-light-green)20%,transparent)}}.border-primary-green\/20{border-color:#2e7d3233}@supports (color:color-mix(in lab,red,red)){.border-primary-green\/20{border-color:color-mix(in oklab,var(--color-primary-green)20%,transparent)}}.border-primary-green\/25{border-color:#2e7d3240}@supports (color:color-mix(in lab,red,red)){.border-primary-green\/25{border-color:color-mix(in oklab,var(--color-primary-green)25%,transparent)}}.border-primary-green\/30{border-color:#2e7d324d}@supports (color:color-mix(in lab,red,red)){.border-primary-green\/30{border-color:color-mix(in oklab,var(--color-primary-green)30%,transparent)}}.border-secondary-green\/20{border-color:#10b98133}@supports (color:color-mix(in lab,red,red)){.border-secondary-green\/20{border-color:color-mix(in oklab,var(--color-secondary-green)20%,transparent)}}.border-slate-100{border-color:var(--color-slate-100)}.border-slate-200{border-color:var(--color-slate-200)}.border-slate-700{border-color:var(--color-slate-700)}.border-transparent{border-color:#0000}.border-white{border-color:var(--color-white)}.border-white\/20{border-color:#fff3}@supports (color:color-mix(in lab,red,red)){.border-white\/20{border-color:color-mix(in oklab,var(--color-white)20%,transparent)}}.border-white\/50{border-color:#ffffff80}@supports (color:color-mix(in lab,red,red)){.border-white\/50{border-color:color-mix(in oklab,var(--color-white)50%,transparent)}}.border-white\/60{border-color:#fff9}@supports (color:color-mix(in lab,red,red)){.border-white\/60{border-color:color-mix(in oklab,var(--color-white)60%,transparent)}}.bg-\[\#0b7a3a\]{background-color:#0b7a3a}.bg-\[\#10b981\]\/6{background-color:#10b9810f}.bg-\[\#22c55e\]{background-color:#22c55e}.bg-\[\#22c55e\]\/8{background-color:#22c55e14}.bg-\[\#075E54\]{background-color:#075e54}.bg-\[\#128C7E\]{background-color:#128c7e}.bg-\[\#179c46\]{background-color:#179c46}.bg-\[\#DCF8C6\]{background-color:#dcf8c6}.bg-\[\#ECE5DD\]{background-color:#ece5dd}.bg-\[\#f5f5f3\]{background-color:#f5f5f3}.bg-bg-secondary{background-color:var(--color-bg-secondary)}.bg-bg-secondary\/50{background-color:#f8fafc80}@supports (color:color-mix(in lab,red,red)){.bg-bg-secondary\/50{background-color:color-mix(in oklab,var(--color-bg-secondary)50%,transparent)}}.bg-blue-500{background-color:var(--color-blue-500)}.bg-blue-600{background-color:var(--color-blue-600)}.bg-emerald-50{background-color:var(--color-emerald-50)}.bg-emerald-100{background-color:var(--color-emerald-100)}.bg-emerald-400\/20{background-color:#00d29433}@supports (color:color-mix(in lab,red,red)){.bg-emerald-400\/20{background-color:color-mix(in oklab,var(--color-emerald-400)20%,transparent)}}.bg-emerald-500{background-color:var(--color-emerald-500)}.bg-emerald-500\/5{background-color:#00bb7f0d}@supports (color:color-mix(in lab,red,red)){.bg-emerald-500\/5{background-color:color-mix(in oklab,var(--color-emerald-500)5%,transparent)}}.bg-emerald-950\/20{background-color:#002c2233}@supports (color:color-mix(in lab,red,red)){.bg-emerald-950\/20{background-color:color-mix(in oklab,var(--color-emerald-950)20%,transparent)}}.bg-gray-200{background-color:var(--color-gray-200)}.bg-gray-600{background-color:var(--color-gray-600)}.bg-green-100{background-color:var(--color-green-100)}.bg-light-green{background-color:var(--color-light-green)}.bg-light-green\/20{background-color:#dcfce733}@supports (color:color-mix(in lab,red,red)){.bg-light-green\/20{background-color:color-mix(in oklab,var(--color-light-green)20%,transparent)}}.bg-light-green\/30{background-color:#dcfce74d}@supports (color:color-mix(in lab,red,red)){.bg-light-green\/30{background-color:color-mix(in oklab,var(--color-light-green)30%,transparent)}}.bg-light-green\/40{background-color:#dcfce766}@supports (color:color-mix(in lab,red,red)){.bg-light-green\/40{background-color:color-mix(in oklab,var(--color-light-green)40%,transparent)}}.bg-light-green\/60{background-color:#dcfce799}@supports (color:color-mix(in lab,red,red)){.bg-light-green\/60{background-color:color-mix(in oklab,var(--color-light-green)60%,transparent)}}.bg-primary-green{background-color:var(--color-primary-green)}.bg-primary-green\/5{background-color:#2e7d320d}@supports (color:color-mix(in lab,red,red)){.bg-primary-green\/5{background-color:color-mix(in oklab,var(--color-primary-green)5%,transparent)}}.bg-primary-green\/8{background-color:#2e7d3214}@supports (color:color-mix(in lab,red,red)){.bg-primary-green\/8{background-color:color-mix(in oklab,var(--color-primary-green)8%,transparent)}}.bg-primary-green\/10{background-color:#2e7d321a}@supports (color:color-mix(in lab,red,red)){.bg-primary-green\/10{background-color:color-mix(in oklab,var(--color-primary-green)10%,transparent)}}.bg-primary-green\/20{background-color:#2e7d3233}@supports (color:color-mix(in lab,red,red)){.bg-primary-green\/20{background-color:color-mix(in oklab,var(--color-primary-green)20%,transparent)}}.bg-red-100{background-color:var(--color-red-100)}.bg-red-500{background-color:var(--color-red-500)}.bg-secondary-green\/10{background-color:#10b9811a}@supports (color:color-mix(in lab,red,red)){.bg-secondary-green\/10{background-color:color-mix(in oklab,var(--color-secondary-green)10%,transparent)}}.bg-secondary-green\/20{background-color:#10b98133}@supports (color:color-mix(in lab,red,red)){.bg-secondary-green\/20{background-color:color-mix(in oklab,var(--color-secondary-green)20%,transparent)}}.bg-slate-100{background-color:var(--color-slate-100)}.bg-slate-300{background-color:var(--color-slate-300)}.bg-slate-700{background-color:var(--color-slate-700)}.bg-slate-800{background-color:var(--color-slate-800)}.bg-slate-900{background-color:var(--color-slate-900)}.bg-teal-300\/10{background-color:#46ecd51a}@supports (color:color-mix(in lab,red,red)){.bg-teal-300\/10{background-color:color-mix(in oklab,var(--color-teal-300)10%,transparent)}}.bg-transparent{background-color:#0000}.bg-white{background-color:var(--color-white)}.bg-white\/5{background-color:#ffffff0d}@supports (color:color-mix(in lab,red,red)){.bg-white\/5{background-color:color-mix(in oklab,var(--color-white)5%,transparent)}}.bg-white\/10{background-color:#ffffff1a}@supports (color:color-mix(in lab,red,red)){.bg-white\/10{background-color:color-mix(in oklab,var(--color-white)10%,transparent)}}.bg-white\/20{background-color:#fff3}@supports (color:color-mix(in lab,red,red)){.bg-white\/20{background-color:color-mix(in oklab,var(--color-white)20%,transparent)}}.bg-white\/80{background-color:#fffc}@supports (color:color-mix(in lab,red,red)){.bg-white\/80{background-color:color-mix(in oklab,var(--color-white)80%,transparent)}}.bg-white\/90{background-color:#ffffffe6}@supports (color:color-mix(in lab,red,red)){.bg-white\/90{background-color:color-mix(in oklab,var(--color-white)90%,transparent)}}.bg-white\/95{background-color:#fffffff2}@supports (color:color-mix(in lab,red,red)){.bg-white\/95{background-color:color-mix(in oklab,var(--color-white)95%,transparent)}}.bg-gradient-to-b{--tw-gradient-position:to bottom in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.bg-gradient-to-br{--tw-gradient-position:to bottom right in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.bg-gradient-to-r{--tw-gradient-position:to right in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.bg-gradient-to-t{--tw-gradient-position:to top in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.bg-gradient-to-tr{--tw-gradient-position:to top right in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.bg-\[linear-gradient\(to_right\,\#e2f5e940_1px\,transparent_1px\)\,linear-gradient\(to_bottom\,\#e2f5e940_1px\,transparent_1px\)\]{background-image:linear-gradient(90deg,#e2f5e940 1px,#0000 1px),linear-gradient(#e2f5e940 1px,#0000 1px)}.bg-\[linear-gradient\(to_right\,\#ffffff03_1px\,transparent_1px\)\,linear-gradient\(to_bottom\,\#ffffff03_1px\,transparent_1px\)\]{background-image:linear-gradient(90deg,#ffffff03 1px,#0000 1px),linear-gradient(#ffffff03 1px,#0000 1px)}.bg-\[radial-gradient\(circle_at_top_right\,rgba\(34\,197\,94\,0\.22\)\,transparent_40\%\)\,radial-gradient\(circle_at_bottom_left\,rgba\(255\,255\,255\,0\.08\)\,transparent_36\%\)\]{background-image:radial-gradient(circle at 100% 0,#22c55e38,#0000 40%),radial-gradient(circle at 0 100%,#ffffff14,#0000 36%)}.from-\[\#0b3b2e\]{--tw-gradient-from:#0b3b2e;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.from-\[\#022c22\]{--tw-gradient-from:#022c22;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.from-emerald-50{--tw-gradient-from:var(--color-emerald-50);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.from-emerald-400{--tw-gradient-from:var(--color-emerald-400);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.from-emerald-400\/10{--tw-gradient-from:#00d2941a}@supports (color:color-mix(in lab,red,red)){.from-emerald-400\/10{--tw-gradient-from:color-mix(in oklab,var(--color-emerald-400)10%,transparent)}}.from-emerald-400\/10{--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.from-emerald-500{--tw-gradient-from:var(--color-emerald-500);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.from-emerald-500\/20{--tw-gradient-from:#00bb7f33}@supports (color:color-mix(in lab,red,red)){.from-emerald-500\/20{--tw-gradient-from:color-mix(in oklab,var(--color-emerald-500)20%,transparent)}}.from-emerald-500\/20{--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.from-emerald-500\/30{--tw-gradient-from:#00bb7f4d}@supports (color:color-mix(in lab,red,red)){.from-emerald-500\/30{--tw-gradient-from:color-mix(in oklab,var(--color-emerald-500)30%,transparent)}}.from-emerald-500\/30{--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.from-emerald-600{--tw-gradient-from:var(--color-emerald-600);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.from-slate-950\/70{--tw-gradient-from:#020618b3}@supports (color:color-mix(in lab,red,red)){.from-slate-950\/70{--tw-gradient-from:color-mix(in oklab,var(--color-slate-950)70%,transparent)}}.from-slate-950\/70{--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.from-white{--tw-gradient-from:var(--color-white);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.via-emerald-50\/20{--tw-gradient-via:#ecfdf533}@supports (color:color-mix(in lab,red,red)){.via-emerald-50\/20{--tw-gradient-via:color-mix(in oklab,var(--color-emerald-50)20%,transparent)}}.via-emerald-50\/20{--tw-gradient-via-stops:var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-via)var(--tw-gradient-via-position),var(--tw-gradient-to)var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}.via-slate-200\/50{--tw-gradient-via:#e2e8f080}@supports (color:color-mix(in lab,red,red)){.via-slate-200\/50{--tw-gradient-via:color-mix(in oklab,var(--color-slate-200)50%,transparent)}}.via-slate-200\/50{--tw-gradient-via-stops:var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-via)var(--tw-gradient-via-position),var(--tw-gradient-to)var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}.via-teal-300{--tw-gradient-via:var(--color-teal-300);--tw-gradient-via-stops:var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-via)var(--tw-gradient-via-position),var(--tw-gradient-to)var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}.via-teal-300\/5{--tw-gradient-via:#46ecd50d}@supports (color:color-mix(in lab,red,red)){.via-teal-300\/5{--tw-gradient-via:color-mix(in oklab,var(--color-teal-300)5%,transparent)}}.via-teal-300\/5{--tw-gradient-via-stops:var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-via)var(--tw-gradient-via-position),var(--tw-gradient-to)var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}.via-teal-400\/20{--tw-gradient-via:#00d3bd33}@supports (color:color-mix(in lab,red,red)){.via-teal-400\/20{--tw-gradient-via:color-mix(in oklab,var(--color-teal-400)20%,transparent)}}.via-teal-400\/20{--tw-gradient-via-stops:var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-via)var(--tw-gradient-via-position),var(--tw-gradient-to)var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}.via-transparent{--tw-gradient-via:transparent;--tw-gradient-via-stops:var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-via)var(--tw-gradient-via-position),var(--tw-gradient-to)var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}.to-\[\#043e30\]{--tw-gradient-to:#043e30;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-\[\#063224\]{--tw-gradient-to:#063224;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-emerald-500{--tw-gradient-to:var(--color-emerald-500);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-emerald-500\/10{--tw-gradient-to:#00bb7f1a}@supports (color:color-mix(in lab,red,red)){.to-emerald-500\/10{--tw-gradient-to:color-mix(in oklab,var(--color-emerald-500)10%,transparent)}}.to-emerald-500\/10{--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-emerald-500\/30{--tw-gradient-to:#00bb7f4d}@supports (color:color-mix(in lab,red,red)){.to-emerald-500\/30{--tw-gradient-to:color-mix(in oklab,var(--color-emerald-500)30%,transparent)}}.to-emerald-500\/30{--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-teal-500{--tw-gradient-to:var(--color-teal-500);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-teal-500\/20{--tw-gradient-to:#00baa733}@supports (color:color-mix(in lab,red,red)){.to-teal-500\/20{--tw-gradient-to:color-mix(in oklab,var(--color-teal-500)20%,transparent)}}.to-teal-500\/20{--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-teal-600{--tw-gradient-to:var(--color-teal-600);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-transparent{--tw-gradient-to:transparent;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-white{--tw-gradient-to:var(--color-white);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.bg-\[size\:24px_24px\]{background-size:24px 24px}.bg-\[size\:32px_32px\]{background-size:32px 32px}.bg-clip-text{-webkit-background-clip:text;background-clip:text}.fill-current{fill:currentColor}.stroke-\[3\]{stroke-width:3px}.object-contain{object-fit:contain}.object-cover{object-fit:cover}.object-bottom{object-position:bottom}.p-0{padding:calc(var(--spacing)*0)}.p-1{padding:calc(var(--spacing)*1)}.p-2{padding:calc(var(--spacing)*2)}.p-3{padding:calc(var(--spacing)*3)}.p-3\.5{padding:calc(var(--spacing)*3.5)}.p-4{padding:calc(var(--spacing)*4)}.p-5{padding:calc(var(--spacing)*5)}.p-6{padding:calc(var(--spacing)*6)}.p-8{padding:calc(var(--spacing)*8)}.p-\[1\.5px\]{padding:1.5px}.px-0{padding-inline:calc(var(--spacing)*0)}.px-1{padding-inline:calc(var(--spacing)*1)}.px-1\.5{padding-inline:calc(var(--spacing)*1.5)}.px-2{padding-inline:calc(var(--spacing)*2)}.px-2\.5{padding-inline:calc(var(--spacing)*2.5)}.px-3{padding-inline:calc(var(--spacing)*3)}.px-3\.5{padding-inline:calc(var(--spacing)*3.5)}.px-4{padding-inline:calc(var(--spacing)*4)}.px-5{padding-inline:calc(var(--spacing)*5)}.px-6{padding-inline:calc(var(--spacing)*6)}.px-8{padding-inline:calc(var(--spacing)*8)}.py-0{padding-block:calc(var(--spacing)*0)}.py-0\.5{padding-block:calc(var(--spacing)*.5)}.py-1{padding-block:calc(var(--spacing)*1)}.py-1\.5{padding-block:calc(var(--spacing)*1.5)}.py-2{padding-block:calc(var(--spacing)*2)}.py-2\.5{padding-block:calc(var(--spacing)*2.5)}.py-3{padding-block:calc(var(--spacing)*3)}.py-4{padding-block:calc(var(--spacing)*4)}.py-5{padding-block:calc(var(--spacing)*5)}.py-6{padding-block:calc(var(--spacing)*6)}.py-8{padding-block:calc(var(--spacing)*8)}.py-16{padding-block:calc(var(--spacing)*16)}.py-20{padding-block:calc(var(--spacing)*20)}.py-24{padding-block:calc(var(--spacing)*24)}.ps-2{padding-inline-start:calc(var(--spacing)*2)}.ps-3{padding-inline-start:calc(var(--spacing)*3)}.pt-2{padding-top:calc(var(--spacing)*2)}.pt-3{padding-top:calc(var(--spacing)*3)}.pt-6{padding-top:calc(var(--spacing)*6)}.pt-8{padding-top:calc(var(--spacing)*8)}.pb-2{padding-bottom:calc(var(--spacing)*2)}.pb-6{padding-bottom:calc(var(--spacing)*6)}.pb-12{padding-bottom:calc(var(--spacing)*12)}.text-center{text-align:center}.text-end{text-align:end}.text-left{text-align:left}.text-right{text-align:right}.text-start{text-align:start}.align-middle{vertical-align:middle}.font-sans{font-family:var(--font-sans)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.text-5xl{font-size:var(--text-5xl);line-height:var(--tw-leading,var(--text-5xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[9px\]{font-size:9px}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.leading-\[0\.98\]{--tw-leading:.98;line-height:.98}.leading-\[1\.1\]{--tw-leading:1.1;line-height:1.1}.leading-none{--tw-leading:1;line-height:1}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.leading-tight{--tw-leading:var(--leading-tight);line-height:var(--leading-tight)}.font-black{--tw-font-weight:var(--font-weight-black);font-weight:var(--font-weight-black)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-extrabold{--tw-font-weight:var(--font-weight-extrabold);font-weight:var(--font-weight-extrabold)}.font-light{--tw-font-weight:var(--font-weight-light);font-weight:var(--font-weight-light)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-\[0\.3em\]{--tw-tracking:.3em;letter-spacing:.3em}.tracking-\[0\.28em\]{--tw-tracking:.28em;letter-spacing:.28em}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.tracking-widest{--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest)}.text-nowrap{text-wrap:nowrap}.break-all{word-break:break-all}.whitespace-nowrap{white-space:nowrap}.text-\[\#0a66c2\]{color:#0a66c2}.text-\[\#0f172a\]{color:#0f172a}.text-\[\#022c22\]{color:#022c22}.text-\[\#22c55e\]{color:#22c55e}.text-\[\#179c46\]{color:#179c46}.text-\[\#57606f\]{color:#57606f}.text-dark-text{color:var(--color-dark-text)}.text-emerald-400\/30{color:#00d2944d}@supports (color:color-mix(in lab,red,red)){.text-emerald-400\/30{color:color-mix(in oklab,var(--color-emerald-400)30%,transparent)}}.text-emerald-600{color:var(--color-emerald-600)}.text-emerald-700{color:var(--color-emerald-700)}.text-emerald-800{color:var(--color-emerald-800)}.text-gray-500{color:var(--color-gray-500)}.text-gray-600{color:var(--color-gray-600)}.text-gray-700{color:var(--color-gray-700)}.text-gray-800{color:var(--color-gray-800)}.text-green-700{color:var(--color-green-700)}.text-primary-green{color:var(--color-primary-green)}.text-red-700{color:var(--color-red-700)}.text-secondary-green{color:var(--color-secondary-green)}.text-secondary-green\/90{color:#10b981e6}@supports (color:color-mix(in lab,red,red)){.text-secondary-green\/90{color:color-mix(in oklab,var(--color-secondary-green)90%,transparent)}}.text-secondary-text{color:var(--color-secondary-text)}.text-slate-200{color:var(--color-slate-200)}.text-slate-300{color:var(--color-slate-300)}.text-slate-400{color:var(--color-slate-400)}.text-slate-500{color:var(--color-slate-500)}.text-slate-600{color:var(--color-slate-600)}.text-slate-700{color:var(--color-slate-700)}.text-slate-800{color:var(--color-slate-800)}.text-slate-900{color:var(--color-slate-900)}.text-slate-950{color:var(--color-slate-950)}.text-teal-400\/25{color:#00d3bd40}@supports (color:color-mix(in lab,red,red)){.text-teal-400\/25{color:color-mix(in oklab,var(--color-teal-400)25%,transparent)}}.text-transparent{color:#0000}.text-white{color:var(--color-white)}.text-white\/70{color:#ffffffb3}@supports (color:color-mix(in lab,red,red)){.text-white\/70{color:color-mix(in oklab,var(--color-white)70%,transparent)}}.capitalize{text-transform:capitalize}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.italic{font-style:italic}.underline{text-decoration-line:underline}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.opacity-0{opacity:0}.opacity-20{opacity:.2}.opacity-30{opacity:.3}.opacity-50{opacity:.5}.opacity-75{opacity:.75}.opacity-100{opacity:1}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-2xl{--tw-shadow:0 25px 50px -12px var(--tw-shadow-color,#00000040);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[0_0_12px_rgba\(16\,185\,129\,0\.4\)\]{--tw-shadow:0 0 12px var(--tw-shadow-color,#10b98166);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[0_2px_8px_rgba\(16\,185\,129\,0\.1\)\]{--tw-shadow:0 2px 8px var(--tw-shadow-color,#10b9811a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[0_2px_8px_rgba\(16\,185\,129\,0\.08\)\]{--tw-shadow:0 2px 8px var(--tw-shadow-color,#10b98114);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[0_2px_12px_rgba\(16\,185\,129\,0\.08\)\]{--tw-shadow:0 2px 12px var(--tw-shadow-color,#10b98114);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[0_4px_12px_rgba\(11\,122\,58\,0\.15\)\]{--tw-shadow:0 4px 12px var(--tw-shadow-color,#0b7a3a26);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[0_4px_16px_rgba\(16\,185\,129\,0\.15\)\]{--tw-shadow:0 4px 16px var(--tw-shadow-color,#10b98126);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[0_4px_20px_rgba\(16\,185\,129\,0\.2\)\]{--tw-shadow:0 4px 20px var(--tw-shadow-color,#10b98133);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[0_20px_40px_-8px_rgba\(0\,0\,0\,0\.05\)\]{--tw-shadow:0 20px 40px -8px var(--tw-shadow-color,#0000000d);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[0_32px_64px_-16px_rgba\(16\,185\,129\,0\.12\)\]{--tw-shadow:0 32px 64px -16px var(--tw-shadow-color,#10b9811f);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-inner{--tw-shadow:inset 0 2px 4px 0 var(--tw-shadow-color,#0000000d);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a),0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a),0 2px 4px -2px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-none{--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-xl{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a),0 8px 10px -6px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-2{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(2px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[\#0b7a3a\]\/10{--tw-shadow-color:#0b7a3a1a}@supports (color:color-mix(in lab,red,red)){.shadow-\[\#0b7a3a\]\/10{--tw-shadow-color:color-mix(in oklab,oklab(50.8281% -.11683 .0655673/.1) var(--tw-shadow-alpha),transparent)}}.shadow-emerald-600\/30{--tw-shadow-color:#0097674d}@supports (color:color-mix(in lab,red,red)){.shadow-emerald-600\/30{--tw-shadow-color:color-mix(in oklab,color-mix(in oklab,var(--color-emerald-600)30%,transparent)var(--tw-shadow-alpha),transparent)}}.ring-primary-green{--tw-ring-color:var(--color-primary-green)}.ring-offset-1{--tw-ring-offset-width:1px;--tw-ring-offset-shadow:var(--tw-ring-inset,)0 0 0 var(--tw-ring-offset-width)var(--tw-ring-offset-color)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.blur-\[1px\]{--tw-blur:blur(1px);filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.blur-\[2px\]{--tw-blur:blur(2px);filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.blur-\[80px\]{--tw-blur:blur(80px);filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.blur-\[90px\]{--tw-blur:blur(90px);filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.blur-\[100px\]{--tw-blur:blur(100px);filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.blur-\[110px\]{--tw-blur:blur(110px);filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.blur-\[120px\]{--tw-blur:blur(120px);filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.blur-md{--tw-blur:blur(var(--blur-md));filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.blur-xl{--tw-blur:blur(var(--blur-xl));filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.drop-shadow-2xl{--tw-drop-shadow-size:drop-shadow(0 25px 25px var(--tw-drop-shadow-color,#00000026));--tw-drop-shadow:drop-shadow(var(--drop-shadow-2xl));filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.drop-shadow-sm{--tw-drop-shadow-size:drop-shadow(0 1px 2px var(--tw-drop-shadow-color,#00000026));--tw-drop-shadow:drop-shadow(var(--drop-shadow-sm));filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.backdrop-blur{--tw-backdrop-blur:blur(8px);-webkit-backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,)}.backdrop-blur-md{--tw-backdrop-blur:blur(var(--blur-md));-webkit-backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,)}.backdrop-blur-xl{--tw-backdrop-blur:blur(var(--blur-xl));-webkit-backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,visibility,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-150{--tw-duration:.15s;transition-duration:.15s}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.duration-350{--tw-duration:.35s;transition-duration:.35s}.duration-500{--tw-duration:.5s;transition-duration:.5s}.duration-\[3000ms\]{--tw-duration:3s;transition-duration:3s}.duration-\[8000ms\]{--tw-duration:8s;transition-duration:8s}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.select-none{-webkit-user-select:none;user-select:none}@media (hover:hover){.group-hover\:translate-x-1:is(:where(.group):hover *){--tw-translate-x:calc(var(--spacing)*1);translate:var(--tw-translate-x)var(--tw-translate-y)}.group-hover\:translate-x-1\.5:is(:where(.group):hover *){--tw-translate-x:calc(var(--spacing)*1.5);translate:var(--tw-translate-x)var(--tw-translate-y)}.group-hover\:translate-y-0:is(:where(.group):hover *){--tw-translate-y:calc(var(--spacing)*0);translate:var(--tw-translate-x)var(--tw-translate-y)}.group-hover\:scale-105:is(:where(.group):hover *){--tw-scale-x:105%;--tw-scale-y:105%;--tw-scale-z:105%;scale:var(--tw-scale-x)var(--tw-scale-y)}.group-hover\:scale-\[1\.03\]:is(:where(.group):hover *){scale:1.03}.group-hover\:text-primary-green:is(:where(.group):hover *){color:var(--color-primary-green)}.group-hover\:opacity-100:is(:where(.group):hover *){opacity:1}.group-hover\/bullet\:bg-emerald-500:is(:where(.group\/bullet):hover *){background-color:var(--color-emerald-500)}.group-hover\/bullet\:text-slate-900:is(:where(.group\/bullet):hover *){color:var(--color-slate-900)}.group-hover\/bullet\:text-white:is(:where(.group\/bullet):hover *){color:var(--color-white)}.group-hover\/bullet\:shadow-\[0_0_10px_rgba\(16\,185\,129\,0\.3\)\]:is(:where(.group\/bullet):hover *){--tw-shadow:0 0 10px var(--tw-shadow-color,#10b9814d);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.group-hover\/img\:scale-110:is(:where(.group\/img):hover *){--tw-scale-x:110%;--tw-scale-y:110%;--tw-scale-z:110%;scale:var(--tw-scale-x)var(--tw-scale-y)}.group-hover\/img\:scale-\[1\.02\]:is(:where(.group\/img):hover *){scale:1.02}.group-hover\/img\:rotate-3:is(:where(.group\/img):hover *){rotate:3deg}.group-hover\/img\:opacity-100:is(:where(.group\/img):hover *){opacity:1}.group-hover\/item\:bg-emerald-500:is(:where(.group\/item):hover *){background-color:var(--color-emerald-500)}.group-hover\/item\:text-slate-900:is(:where(.group\/item):hover *){color:var(--color-slate-900)}.group-hover\/item\:text-white:is(:where(.group\/item):hover *){color:var(--color-white)}.group-hover\/item\:shadow-\[0_0_12px_rgba\(16\,185\,129\,0\.3\)\]:is(:where(.group\/item):hover *){--tw-shadow:0 0 12px var(--tw-shadow-color,#10b9814d);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}}.selection\:bg-light-green ::selection{background-color:var(--color-light-green)}.selection\:bg-light-green::selection{background-color:var(--color-light-green)}.selection\:text-primary-green ::selection{color:var(--color-primary-green)}.selection\:text-primary-green::selection{color:var(--color-primary-green)}@media (hover:hover){.hover\:scale-105:hover{--tw-scale-x:105%;--tw-scale-y:105%;--tw-scale-z:105%;scale:var(--tw-scale-x)var(--tw-scale-y)}.hover\:scale-\[1\.02\]:hover{scale:1.02}.hover\:border-light-green\/40:hover{border-color:#dcfce766}@supports (color:color-mix(in lab,red,red)){.hover\:border-light-green\/40:hover{border-color:color-mix(in oklab,var(--color-light-green)40%,transparent)}}.hover\:border-white\/40:hover{border-color:#fff6}@supports (color:color-mix(in lab,red,red)){.hover\:border-white\/40:hover{border-color:color-mix(in oklab,var(--color-white)40%,transparent)}}.hover\:bg-\[\#08652f\]:hover{background-color:#08652f}.hover\:bg-blue-700:hover{background-color:var(--color-blue-700)}.hover\:bg-gray-50:hover{background-color:var(--color-gray-50)}.hover\:bg-light-green:hover{background-color:var(--color-light-green)}.hover\:bg-white\/10:hover{background-color:#ffffff1a}@supports (color:color-mix(in lab,red,red)){.hover\:bg-white\/10:hover{background-color:color-mix(in oklab,var(--color-white)10%,transparent)}}.hover\:bg-white\/50:hover{background-color:#ffffff80}@supports (color:color-mix(in lab,red,red)){.hover\:bg-white\/50:hover{background-color:color-mix(in oklab,var(--color-white)50%,transparent)}}.hover\:from-emerald-500:hover{--tw-gradient-from:var(--color-emerald-500);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.hover\:to-teal-500:hover{--tw-gradient-to:var(--color-teal-500);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.hover\:text-\[\#0b7a3a\]:hover{color:#0b7a3a}.hover\:text-gray-700:hover{color:var(--color-gray-700)}.hover\:text-primary-green:hover{color:var(--color-primary-green)}.hover\:shadow-\[0_6px_20px_rgba\(16\,185\,129\,0\.25\)\]:hover{--tw-shadow:0 6px 20px var(--tw-shadow-color,#10b98140);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.hover\:shadow-\[0_32px_64px_-16px_rgba\(16\,185\,129\,0\.15\)\]:hover{--tw-shadow:0 32px 64px -16px var(--tw-shadow-color,#10b98126);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.hover\:shadow-lg:hover{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a),0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.hover\:shadow-secondary-green\/10:hover{--tw-shadow-color:#10b9811a}@supports (color:color-mix(in lab,red,red)){.hover\:shadow-secondary-green\/10:hover{--tw-shadow-color:color-mix(in oklab,color-mix(in oklab,var(--color-secondary-green)10%,transparent)var(--tw-shadow-alpha),transparent)}}}.focus\:border-blue-500:focus{border-color:var(--color-blue-500)}.focus\:ring-2:focus{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(2px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus\:ring-blue-500:focus{--tw-ring-color:var(--color-blue-500)}.focus\:ring-offset-2:focus{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,)0 0 0 var(--tw-ring-offset-width)var(--tw-ring-offset-color)}.focus\:outline-none:focus{--tw-outline-style:none;outline-style:none}.active\:scale-\[0\.98\]:active{scale:.98}@media (min-width:40rem){.sm\:-right-6{right:calc(var(--spacing)*-6)}.sm\:-left-6{left:calc(var(--spacing)*-6)}.sm\:mx-0{margin-inline:calc(var(--spacing)*0)}.sm\:block{display:block}.sm\:w-auto{width:auto}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:p-8{padding:calc(var(--spacing)*8)}.sm\:text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.sm\:text-6xl{font-size:var(--text-6xl);line-height:var(--tw-leading,var(--text-6xl--line-height))}.sm\:text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}}@media (min-width:48rem){.md\:-right-8{right:calc(var(--spacing)*-8)}.md\:-left-10{left:calc(var(--spacing)*-10)}.md\:col-span-2{grid-column:span 2/span 2}.md\:flex{display:flex}.md\:hidden{display:none}.md\:h-\[450px\]{height:450px}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.md\:gap-12{gap:calc(var(--spacing)*12)}.md\:rounded-\[40px\]{border-radius:40px}.md\:p-8{padding:calc(var(--spacing)*8)}.md\:p-10{padding:calc(var(--spacing)*10)}.md\:px-12{padding-inline:calc(var(--spacing)*12)}.md\:px-16{padding-inline:calc(var(--spacing)*16)}.md\:px-\[60px\]{padding-inline:60px}.md\:px-\[70px\]{padding-inline:70px}.md\:text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.md\:text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.md\:text-5xl{font-size:var(--text-5xl);line-height:var(--tw-leading,var(--text-5xl--line-height))}.md\:text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.md\:text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}}@media (min-width:64rem){.lg\:right-\[-65px\]{right:-65px}.lg\:left-\[-65px\]{left:-65px}.lg\:order-1{order:1}.lg\:order-2{order:2}.lg\:col-span-6{grid-column:span 6/span 6}.lg\:mt-0{margin-top:calc(var(--spacing)*0)}.lg\:min-h-\[550px\]{min-height:550px}.lg\:max-w-\[90\%\]{max-width:90%}.lg\:translate-x-6{--tw-translate-x:calc(var(--spacing)*6);translate:var(--tw-translate-x)var(--tw-translate-y)}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.lg\:flex-row-reverse{flex-direction:row-reverse}.lg\:items-start{align-items:flex-start}.lg\:justify-end{justify-content:flex-end}.lg\:justify-start{justify-content:flex-start}.lg\:gap-12{gap:calc(var(--spacing)*12)}.lg\:gap-16{gap:calc(var(--spacing)*16)}.lg\:text-left{text-align:left}.lg\:text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.lg\:text-6xl{font-size:var(--text-6xl);line-height:var(--tw-leading,var(--text-6xl--line-height))}.lg\:text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.lg\:text-\[76px\]{font-size:76px}}}.app-container{height:100vh;display:flex}.main-content-wrapper{flex-grow:1;display:flex}main{background-color:#f5f5f5;flex:1;padding:20px;transition:margin-right .3s}@media (max-width:768px){.app-container{position:relative;overflow:visible!important}.main-content-wrapper{overflow:visible!important}}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-space-x-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"<length-percentage>";inherits:false;initial-value:0%}@property --tw-gradient-via-position{syntax:"<length-percentage>";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"<length-percentage>";inherits:false;initial-value:100%}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@keyframes spin{to{transform:rotate(360deg)}}@keyframes ping{75%,to{opacity:0;transform:scale(2)}}@keyframes pulse{50%{opacity:.5}}@keyframes bounce{0%,to{animation-timing-function:cubic-bezier(.8,0,1,1);transform:translateY(-25%)}50%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:none}}
