.forgot-password-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.forgot-password-modal{background-color:#fff;border-radius:8px;box-shadow:0 4px 6px #0000001a;width:90%;max-width:400px;padding:0;animation:slideIn .3s ease-out}@keyframes slideIn{0%{transform:translateY(-50px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid #e0e0e0}.close-btn{background:none;border:none;font-size:24px;color:#666;cursor:pointer;padding:0;width:30px;height:30px;display:flex;justify-content:center;align-items:center;border-radius:4px;transition:background-color .2s}.close-btn:hover{background-color:#f0f0f0}form{padding:20px}.form-group label{display:block;margin-bottom:8px;font-weight:500;color:#333;font-size:14px}.form-group input{width:100%;padding:10px;border:1px solid #ddd;border-radius:4px;font-size:14px;transition:border-color .3s;box-sizing:border-box}.form-group input:focus{outline:none;border-color:#4caf50;box-shadow:0 0 0 2px #4caf501a}.message{padding:12px;border-radius:4px;margin-bottom:15px;font-size:14px;text-align:center}.form-actions{display:flex;gap:10px;justify-content:flex-end}.submit-btn,.cancel-btn{padding:10px 20px;border:none;border-radius:4px;font-size:14px;font-weight:500;cursor:pointer;transition:all .3s}.submit-btn{background-color:#4caf50;color:#fff}.submit-btn:hover:not(:disabled){background-color:#45a049}.cancel-btn{background-color:#e0e0e0;color:#333}.cancel-btn:hover:not(:disabled){background-color:#d0d0d0}.cancel-btn:disabled{opacity:.6;cursor:not-allowed}*{box-sizing:border-box}.auth-container{display:flex;justify-content:center;align-items:center;min-height:100vh;background:linear-gradient(135deg,#1a3a52 0%,#2d5f7f 50%,#1f4d6d 100%);position:relative;overflow:hidden;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.auth-container:before{content:"";position:absolute;top:-50%;right:-10%;width:600px;height:600px;background:radial-gradient(circle,rgba(255,255,255,.1) 0%,transparent 70%);border-radius:50%;animation:float 20s infinite ease-in-out}.auth-container:after{content:"";position:absolute;bottom:-30%;left:-5%;width:400px;height:400px;background:radial-gradient(circle,rgba(255,255,255,.08) 0%,transparent 70%);border-radius:50%;animation:float 25s infinite ease-in-out reverse}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(30px)}}.back-btn{position:absolute;top:20px;left:20px;z-index:200y the routine logic is something like when;background:rgba(255,255,255,.9);border:none;padding:8px 14px;border-radius:8px;font-size:14px;font-weight:600;color:#333;cursor:pointer;box-shadow:0 2px 8px #0000001a;transition:all .3s ease;-webkit-tap-highlight-color:transparent}.auth-form{background:white;padding:60px 50px;border-radius:20px;box-shadow:0 20px 60px #00000040,0 0 1px #0000001a;width:100%;max-width:450px;position:relative;z-index:10;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);animation:slideIn .6s ease-out}@keyframes slideIn{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.auth-form h1{color:#2c2c54;font-size:32px;margin-bottom:45px;text-align:center;font-weight:700;letter-spacing:-.5px}.auth-form form{display:flex;flex-direction:column;gap:18px}.auth-form input,.auth-form select{padding:14px 16px;border:2px solid #e8e8f0;border-radius:12px;font-size:15px;font-family:inherit;background:#f8f9fd;color:#2c2c54;transition:all .3s cubic-bezier(.4,0,.2,1);letter-spacing:.3px}.auth-form input::placeholder{color:#999;font-weight:500}.auth-form input:hover,.auth-form select:hover{border-color:#d0d8e8;background:#ffffff}.auth-form input:focus,.auth-form select:focus{outline:none;border-color:#2d5f7f;background:white;box-shadow:0 0 0 4px #2d5f7f26,inset 0 0 0 1px #2d5f7f1a}.auth-form button{padding:15px;background:linear-gradient(135deg,#2d5f7f 0%,#3a7ca5 100%);color:#fff;border:none;border-radius:12px;font-size:16px;font-weight:700;cursor:pointer;transition:all .4s cubic-bezier(.4,0,.2,1);text-transform:uppercase;letter-spacing:1px;margin-top:10px;box-shadow:0 8px 20px #2d5f7f66;position:relative;overflow:hidden}.auth-form button:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:rgba(255,255,255,.3);transform:translate(-50%,-50%);transition:width .6s,height .6s}.auth-form button:hover{transform:translateY(-4px);box-shadow:0 15px 40px #2d5f7f80}.auth-form button:hover:before{width:300px;height:300px}.auth-form button:active{transform:translateY(-2px)}.auth-form p{text-align:center;color:#666;margin-top:25px;font-size:13px;line-height:1.6;letter-spacing:.4px}.auth-form a{color:#2d5f7f;text-decoration:none;font-weight:700;transition:color .3s;cursor:pointer}.auth-form a:hover{color:#1a3a52;text-decoration:underline}.error{background:linear-gradient(135deg,#fee9ed 0%,#fdeef3 100%);color:#c33;padding:16px 18px;border-radius:12px;margin-bottom:20px;border-left:5px solid #e74c3c;border:2px solid #f5c6ce;display:flex;align-items:center;gap:12px;font-weight:500;font-size:14px;box-shadow:0 4px 12px #e74c3c1a;animation:slideInTop .4s ease-out}.error:before{content:"⚠️";font-size:18px;flex-shrink:0}.success{background:linear-gradient(135deg,#efe9fd 0%,#f3edfe 100%);color:#27ae60;padding:16px 18px;border-radius:12px;margin-bottom:20px;border:2px solid #d4f1e0;display:flex;align-items:center;gap:12px;font-weight:500;font-size:14px;box-shadow:0 4px 12px #27ae601a;animation:slideInTop .4s ease-out}.success:before{content:"✓";font-size:18px;flex-shrink:0;font-weight:700}@keyframes slideInTop{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 768px){.auth-form{padding:50px 30px;max-width:90%;margin:20px}.auth-form h1{font-size:28px}.auth-form h2{font-size:14px;letter-spacing:1.5px;margin-bottom:30px}.auth-form form{gap:16px}.auth-form input,.auth-form select{padding:13px 14px;font-size:16px}.auth-form button{padding:13px;font-size:15px}}@media (max-width: 480px){.auth-container:before,.auth-container:after{display:none}.auth-form{padding:40px 24px;border-radius:16px;width:calc(100% - 48px);margin:10px}.auth-form h1{font-size:26px;margin-bottom:5px;word-wrap:break-word}.auth-form h2{font-size:12px;margin-bottom:25px;letter-spacing:1px;word-wrap:break-word}.auth-form form{gap:14px}.auth-form input,.auth-form select{padding:12px 13px;font-size:16px!important;border-radius:10px;width:100%!important;box-sizing:border-box!important;min-height:44px}.auth-form button{padding:12px;font-size:14px;letter-spacing:.5px;min-height:44px;width:100%}.auth-form p{font-size:12px;margin-top:20px;word-wrap:break-word}.error,.success{padding:14px 16px;font-size:13px;word-wrap:break-word}}.auth-form input:focus-visible,.auth-form select:focus-visible{outline:2px solid #2d5f7f;outline-offset:2px}@media print{.auth-container,.auth-form{background:white;box-shadow:none}.auth-form button{display:none}}.reset-password-page{min-height:100vh;display:flex;justify-content:center;align-items:center;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);padding:20px}.reset-password-container{width:100%;max-width:500px}.reset-password-card,.error-message{background-color:#fff;border-radius:8px;box-shadow:0 10px 25px #0003;padding:40px}.reset-password-card h1{text-align:center;color:#333;margin:0 0 10px;font-size:28px}.subtitle{text-align:center;color:#666;margin:0 0 30px;font-size:14px}.error-message{text-align:center}.error-message h2{color:#d32f2f;margin:0 0 10px}.error-message p{color:#666;margin:0 0 20px}.error-message button{background-color:#667eea;color:#fff;border:none;padding:12px 30px;border-radius:4px;font-size:14px;font-weight:600;cursor:pointer;transition:background-color .3s}.error-message button:hover{background-color:#5568d3}form{display:flex;flex-direction:column;gap:20px}.form-group label{margin-bottom:8px;font-weight:600;color:#333;font-size:14px}.password-input-wrapper{position:relative;display:flex;align-items:center}.form-group input{width:100%;padding:12px 40px 12px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px;transition:border-color .3s,box-shadow .3s;box-sizing:border-box;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.form-group input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.form-group input:disabled{background-color:#f5f5f5;cursor:not-allowed;color:#999}.toggle-password{position:absolute;right:10px;background:none;border:none;font-size:18px;cursor:pointer;padding:0 8px 0 0;transition:opacity .2s}.toggle-password:hover{opacity:.7}.toggle-password:disabled{cursor:not-allowed;opacity:.5}.password-hint{font-size:12px;color:#999;margin-top:4px}.message{padding:12px;border-radius:4px;text-align:center;font-size:14px;animation:slideIn .3s ease-out}@keyframes slideIn{0%{transform:translateY(-10px);opacity:0}to{transform:translateY(0);opacity:1}}.submit-btn,.back-btn{padding:12px;border:none;border-radius:4px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s}.submit-btn{background-color:#667eea;color:#fff}.submit-btn:hover:not(:disabled){background-color:#5568d3;transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.submit-btn:disabled{background-color:#ccc;cursor:not-allowed}.back-btn{background-color:#f0f0f0;color:#333}.back-btn:hover:not(:disabled){background-color:#e0e0e0}.back-btn:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 600px){.reset-password-card,.error-message{padding:30px 20px}.reset-password-card h1{font-size:24px}}.home-page{min-height:100vh;background-color:#00072d;display:flex;flex-direction:column;position:relative;overflow-x:hidden;width:100%}.home-page:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 20% 50%,rgba(6,182,212,.15) 0%,transparent 50%),radial-gradient(circle at 80% 80%,rgba(2,132,199,.1) 0%,transparent 50%);pointer-events:none}.header{background-image:none!important;background:#121020!important;color:#fff;padding:28px 60px;display:flex;justify-content:space-between;align-items:center;position:relative;z-index:10;gap:30px;width:100%;box-sizing:border-box}.header-left,.header-right{display:flex;align-items:center;gap:20px;z-index:2}.header-title{position:absolute;left:50%;transform:translate(-50%);margin:0}.department-logo{transform:scale(1.5);height:70px;width:70px;border-radius:8px;padding:6px;object-fit:contain;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 12px #0003}.header-title{flex:1;margin:0;font-size:32px;font-weight:700;letter-spacing:-.5px;text-shadow:0 2px 4px rgba(0,0,0,.1)}.login-btn{position:relative;padding:10px 30px;font-size:18px;font-weight:700;text-transform:uppercase;color:#320;background:linear-gradient(135deg,#bf953f,#fcf6ba,#b38728,#fcf6ba,#aa771c);border:none;border-radius:5px;cursor:pointer;overflow:hidden;box-shadow:0 4px 6px #0000004d;text-decoration:none;transition:all .3s cubic-bezier(.4,0,.2,1);display:inline-block}.login-btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(120deg,transparent 20%,rgba(255,255,255,.6) 50%,rgba(255,215,0,.8) 55%,transparent 80%);animation:diagonalShine 3s linear infinite;transform:skew(-20deg)}@keyframes diagonalShine{0%{left:-150%;top:150%}20%{left:150%;top:-150%}to{left:150%;top:-150%}}.login-btn:hover{transform:translateY(-4px);box-shadow:0 10px 30px #06b6d44d;background:linear-gradient(135deg,#ffcbcb 0%,#cffafe 100%);border-color:#06b6d4}.home-container{flex:1;padding:50px 40px;max-width:1400px;margin:0 auto;width:100%;position:relative;z-index:5}.category-page{display:flex;flex-direction:column;gap:40px;position:relative;z-index:5}.category-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:35px;gap:20px}.back-btn{display:inline-flex;align-items:center;gap:8px;padding:12px 24px;background:linear-gradient(135deg,#06b6d4 0%,#0891b2 100%);color:#ffffffb8;border:none;border-radius:10px;font-size:14px;font-weight:700;cursor:pointer;transition:all .3s ease;box-shadow:0 8px 25px #06b6d44d;white-space:nowrap;flex-shrink:0}.back-btn:hover{transform:translateY(-4px) scale(1.02);box-shadow:0 12px 35px #06b6d44d}.category-header h2{margin:0;background-color:#009277;background:linear-gradient(135deg,#06b6d4 0%,#0891b2 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-size:36px;font-weight:800;letter-spacing:-.5px;flex:1;text-align:center;border-radius:40px}.no-data{text-align:center;color:#999;font-size:18px;padding:60px 20px}.category-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:28px}.category-card{background:white;border:1px solid rgba(6,182,212,.12);border-radius:16px;overflow:hidden;box-shadow:0 10px 35px #06b6d424;transition:all .4s cubic-bezier(.4,0,.2,1);position:relative;display:flex;flex-direction:column}.category-card:after{content:"";position:absolute;top:0;left:0;right:0;height:5px;opacity:0;transition:opacity .3s ease}.category-card:hover{transform:translateY(-12px);box-shadow:0 20px 50px #06b6d438;border-color:#06b6d433}.category-card:hover:after{opacity:1}.category-image{width:100%;height:160px;object-fit:contain;background:linear-gradient(135deg,#f0f9ff 0%,#cffafe 100%);transition:filter .3s ease;display:block}.category-card:hover .category-image{filter:brightness(1.08)}.category-info{padding:20px;flex:1;display:flex;flex-direction:column}.category-info h4{margin:0 0 8px;color:#1a1a2e;font-size:18px;font-weight:800}.category-designation{margin:0 0 10px;background:linear-gradient(135deg,#06b6d4 0%,#0891b2 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;color:transparent;background-clip:text;font-weight:800;font-size:11px;text-transform:uppercase;letter-spacing:1.5px}.category-qualification{margin:0;color:#666;font-size:12px;line-height:1.6;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-weight:600}.category-description{margin:0;color:#666;font-size:13px;line-height:1.6}.department-section{display:grid;grid-template-columns:1fr 1fr;gap:35px;margin-bottom:50px;padding:35px;background:#f0e3b0;border-radius:18px;box-shadow:0 10px 40px #06b6d426;align-items:center;border:1px solid rgba(6,182,212,.1)}.department-image{width:100%;height:240px;object-fit:contain;border-radius:14px;box-shadow:0 12px 30px #06b6d433;transition:transform .3s ease;background:linear-gradient(135deg,#f0f9ff 0%,#cffafe 100%)}.department-image:hover{transform:scale(1.02)}.department-info h2{color:#1a1a2e;font-size:32px;margin:0 0 15px;font-weight:800;background:linear-gradient(135deg,#06b6d4 0%,#0891b2 100%);-webkit-background-clip:text;background-clip:text}.department-info p{color:#555;font-size:13px;font-weight:500;display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden}.department-info p.collapsed{-webkit-line-clamp:5;line-clamp:5}.department-info p.expanded{display:block;overflow:visible}.personnel-section{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-bottom:50px;padding:0}.personnel-card{background:white;border-radius:18px;overflow:hidden;color:#333;box-shadow:0 10px 35px #06b6d426;transition:all .4s cubic-bezier(.4,0,.2,1);border:1px solid rgba(6,182,212,.12);position:relative}.personnel-card:before{content:"";position:absolute;top:0;left:0;right:0;height:5px;background:linear-gradient(90deg,#06b6d4 0%,#0891b2 100%);opacity:0;transition:opacity .3s ease}.personnel-card:hover{transform:translateY(-10px);box-shadow:0 20px 50px #06b6d438}.personnel-card:hover:before{opacity:1}.personnel-image{width:100%;height:160px;object-fit:contain;display:block;transition:filter .4s ease;background:linear-gradient(135deg,#c5eeff 0%,#ffc6c6 100%)}.personnel-card:hover .personnel-image{filter:brightness(1.08)}.personnel-content{padding:20px;background:white;position:relative;z-index:2}.role-title{font-size:11px;text-transform:uppercase;letter-spacing:3px;margin:0 0 12px;color:#06b6d4;font-weight:800}.personnel-card h4{margin:0 0 10px;font-size:22px;font-weight:800;color:#1a1a2e}.designation{margin:0 0 12px;font-size:14px;color:#06b6d4;font-weight:700}.personnel-card .description{margin:0;font-size:13px;line-height:1.6;color:#666;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.faculty-section{background:white;padding:40px;border-radius:18px;box-shadow:0 10px 40px #06b6d41f;border:1px solid rgba(6,182,212,.08);margin-bottom:50px}.faculty-section h2{color:#1a1a2e;font-size:32px;margin:0 0 35px;text-align:center;font-weight:800;background:linear-gradient(135deg,#06b6d4 0%,#0891b2 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:-.5px}.faculty-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:28px}.faculty-card{background:white;border:1px solid rgba(6,182,212,.08);border-radius:16px;overflow:hidden;box-shadow:0 10px 35px #06b6d424;transition:all .4s cubic-bezier(.4,0,.2,1);position:relative;display:flex;flex-direction:column}.faculty-card:after{content:"";position:absolute;top:0;left:0;right:0;height:5px;background:linear-gradient(90deg,#06b6d4 0%,#0891b2 100%);opacity:0;transition:opacity .3s ease}.faculty-card:hover{transform:translateY(-12px);box-shadow:0 20px 50px #06b6d438;border-color:#06b6d426}.faculty-card:hover:after{opacity:1}.faculty-image{width:100%;height:160px;object-fit:contain;background:linear-gradient(135deg,#f0f9ff 0%,#cffafe 100%);transition:filter .3s ease;display:block}.faculty-card:hover .faculty-image{filter:brightness(1.08)}.faculty-info{padding:20px;flex:1;display:flex;flex-direction:column}.faculty-info h4{margin:0 0 8px;color:#1a1a2e;font-size:20px;font-weight:800}.faculty-designation{margin:0 0 12px;background:linear-gradient(135deg,#06b6d4 0%,#0891b2 100%);-webkit-background-clip:text;background-clip:text;font-weight:800;font-size:12px;text-transform:uppercase;letter-spacing:1.5px}.faculty-description{margin:0;color:#666;font-size:13px;line-height:1.6}.qualification{margin:0 0 8px;color:#666;font-size:13px;font-weight:600}.buttons-section{margin-top:50px;padding:50px 40px;background:#02283d;border-radius:18px;box-shadow:0 15px 50px #06b6d41f;border:1px solid rgba(6,182,212,.08)}.section-title{text-align:center;background:linear-gradient(135deg,#06b6d4 0%,#0891b2 100%);-webkit-background-clip:text;background-clip:text;font-size:32px;margin:0 0 40px;font-weight:800;letter-spacing:-.5px}.buttons-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:25px}.category-nav-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:28px 18px;border:2px solid #a5f3fc;border-radius:14px;font-size:13px;font-weight:700;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);background:white;color:#06b6d4;gap:10px;position:relative;box-shadow:0 4px 15px #06b6d41a}.category-nav-btn:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;border-radius:12px;opacity:0;transition:opacity .3s ease;z-index:0}.btn-icon{font-size:36px;display:block;position:relative;z-index:1;transition:transform .3s ease,color .3s ease;color:#06b6d4}.category-nav-btn span{position:relative;z-index:1;transition:color .3s ease;color:#fff;font-size:13px;font-weight:800;letter-spacing:.5px}.category-nav-btn:hover{border-color:transparent;transform:translateY(-8px);box-shadow:0 12px 30px #06b6d44d}.category-nav-btn:hover:before{opacity:1}.category-nav-btn:hover span{color:#fff}.category-nav-btn:hover .btn-icon{transform:scale(1.12);color:#fff}.faculty-btn,.teaching-assist-btn,.technical-staff-btn,.non-teaching-btn{background-color:#005e7c;color:#fff}.faculty-btn:hover,.teaching-assist-btn:hover,.technical-staff-btn:hover,.non-teaching-btn:hover{background-color:#22505d}.loading{display:flex;justify-content:center;align-items:center;min-height:100vh;font-size:20px;color:#333}.read-more{display:inline-block;color:#06b6d4;background:none;border:none;padding:0;margin:8px 0 0;cursor:pointer;font-weight:700;font-size:13px;text-decoration:underline;transition:color .3s ease}.read-more:hover{color:#0891b2}.marquee{width:100%;overflow:hidden;white-space:nowrap;box-sizing:border-box;color:#fff;padding:10px 0}.marquee span{display:inline-block;padding-left:100%;animation:scroll-left 30s linear infinite}@keyframes scroll-left{0%{transform:translate(0)}to{transform:translate(-100%)}}.marquee strong{padding:10px}@media (max-width: 1024px){.buttons-grid{grid-template-columns:repeat(2,1fr)}.department-section,.personnel-section{gap:20px}}@media (max-width: 768px){.home-container{padding:15px}.department-section{grid-template-columns:1fr;padding:20px}.personnel-section{grid-template-columns:1fr;gap:20px}.buttons-section{padding:20px}.buttons-grid{grid-template-columns:1fr;gap:15px}.category-nav-btn{padding:18px 12px}.btn-icon{font-size:24px}.section-title{font-size:22px;margin-bottom:20px}.header{flex-direction:column;gap:15px;text-align:center;padding:15px}.header h1{font-size:22px}.category-header{flex-direction:column;align-items:flex-start}.category-header h2{width:100%;text-align:center;margin-top:15px}.back-btn{margin-bottom:15px}.department-image{height:200px;order:2}.department-info{order:1}.department-info h2{font-size:20px}.personnel-image{height:250px}.personnel-content{padding:20px}.personnel-card h4{font-size:20px}.faculty-grid,.category-grid{grid-template-columns:1fr}.category-header{flex-direction:column;align-items:flex-start;gap:10px}.category-header h2{width:100%;text-align:center}.back-btn{margin-bottom:5px}}@media (max-width: 480px){.home-container{padding:12px}.buttons-grid{grid-template-columns:1fr;gap:12px}.buttons-section{padding:15px}.category-nav-btn{padding:15px 10px}.btn-icon{font-size:22px}.section-title{font-size:18px;margin-bottom:15px}.header{padding:12px}.header h1{font-size:18px}.login-btn{padding:8px 16px;font-size:14px}.department-section{padding:15px;gap:15px}.department-image{height:150px}.department-info h2{font-size:18px}.department-info p{font-size:14px}.personnel-section{gap:15px}.personnel-card{min-height:auto;display:flex;flex-direction:column}.personnel-content{padding:16px;display:flex;flex-direction:column;justify-content:space-between;flex:1}.personnel-image{height:140px}.personnel-image{height:180px}.personnel-content{padding:15px}.personnel-card h4{font-size:18px}.role-title{font-size:11px;letter-spacing:1px}.designation,.personnel-card .description{font-size:13px}.category-grid{grid-template-columns:1fr;gap:15px}.category-image{height:180px}.category-info{padding:12px}.category-info h4{font-size:16px}.category-header{flex-direction:column;gap:8px;padding:0;margin-bottom:20px}.back-btn{width:38%}}.carousel-section{width:100%;margin-bottom:40px;padding:20px 0;background:rgba(255,255,255,.05);overflow:hidden;box-sizing:border-box}.carousel-container{position:relative;width:90%;max-width:1100px;height:400px;margin:0 auto;border-radius:16px;overflow:hidden;box-shadow:0 10px 40px #0003;background:white;box-sizing:border-box}.carousel-slides{position:relative;width:100%;height:100%;overflow:hidden}.carousel-slide{position:absolute;width:100%;height:100%;opacity:0;transition:opacity .6s ease-in-out;display:flex;align-items:center;justify-content:center}.carousel-slide.active{opacity:1;z-index:1}.carousel-image{width:100%;height:100%;object-fit:cover;display:block}.carousel-caption{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(180deg,transparent 0%,rgba(0,0,0,.8) 50%,rgba(0,0,0,.9) 100%);color:#fff;padding:40px 30px 20px;text-align:left;z-index:2}.carousel-caption h3{margin:0 0 8px;font-size:24px;font-weight:700}.carousel-caption p{margin:0;font-size:14px;line-height:1.5;opacity:.9}.carousel-btn{position:absolute;top:50%;transform:translateY(-50%);background:rgba(82,54,54,.307);border:none;width:50px;height:50px;font-size:24px;cursor:pointer;border-radius:50%;transition:all .3s ease;display:flex;align-items:center;justify-content:center;z-index:3;font-weight:700}.carousel-btn:hover{background:rgb(199,194,194);color:#004e89;transform:translateY(-50%) scale(1.1)}.carousel-prev{left:20px}.carousel-next{right:20px}.carousel-indicators{display:flex;justify-content:center;gap:12px;padding:20px;background:rgba(255,255,255,.05)}.indicator{width:12px;height:12px;border-radius:50%;background:rgba(255,255,255,.5);border:2px solid rgba(255,255,255,.7);cursor:pointer;transition:all .3s ease}.indicator.active{background:white;width:28px;border-radius:6px;transform:scale(1.1)}.indicator:hover{background:rgba(255,255,255,.8)}@media (max-width: 768px){.department-logo{height:50px;width:50px}.carousel-container,.carousel-slides{height:300px}.carousel-btn{width:40px;height:40px;font-size:18px}.carousel-caption{padding:20px 20px 15px}.carousel-caption h3{font-size:18px}.carousel-caption p{font-size:12px}}.notice-board-section{margin:40px 0;padding:0 20px}.notice-board-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;position:relative}.header-left h2{font-size:32px;color:#0060fb;margin:0 0 8px;font-weight:700;display:flex;align-items:center;gap:12px}.header-left .subtitle{color:#64748b;font-size:14px;margin:0;text-transform:uppercase;letter-spacing:1px}.view-all-btn{background:linear-gradient(135deg,#001b92 0%,#0100e1 100%);color:#fff;border:none;padding:12px 24px;border-radius:8px;font-size:14px;font-weight:700;cursor:pointer;transition:all .3s ease;text-transform:uppercase;letter-spacing:1px}.view-all-btn:hover{transform:translateY(-2px);box-shadow:0 8px 16px #667eea66}.notices-container{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:40px}.notice-card{background:white;border-radius:10px;padding:14px;box-shadow:0 2px 8px #0000001a;transition:all .3s ease;display:flex;flex-direction:column;cursor:pointer;position:relative;overflow:hidden;min-height:110px;border:1px solid #f0f0f0}.notice-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;transform:scaleX(0);transform-origin:left;transition:transform .3s ease}.notice-card:hover{box-shadow:0 6px 16px #667eea33;transform:translateY(-3px);border-color:#e0e7ff}.notice-card:hover:before{transform:scaleX(1)}.notice-date{position:absolute;top:8px;right:8px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:6px 8px;background:linear-gradient(135deg,#f59e0b 0%,#f97316 100%);border-radius:6px;color:#fff;font-weight:700;text-align:center;min-width:48px;font-size:11px;box-shadow:0 2px 6px #f973164d}.date-day{font-size:14px;line-height:1;margin-bottom:1px}.date-month{font-size:9px;opacity:.95}.date-year{display:none}.notice-content{flex:1;display:flex;flex-direction:column;justify-content:space-between;margin-top:20px}.notice-title-btn{background:none;border:none;padding:0;text-align:left;font-size:13px;font-weight:600;color:#1e293b;cursor:pointer;transition:all .3s ease;word-break:break-word;text-decoration:none;line-height:1.3;margin-bottom:6px;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.notice-title-btn:hover{color:#667eea}.notice-title-btn:disabled{opacity:.6}.notice-title-btn:disabled{opacity:.6;cursor:not-allowed}.notice-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:11px}.notice-time{color:#64748b;font-size:10px;display:flex;align-items:center;gap:3px}.notice-tag{display:inline-block;padding:3px 8px;border-radius:10px;font-size:10px;font-weight:600;white-space:nowrap}.notice-tag.tag-important{background:#fcd34d;color:#78350f}.notice-tag.tag-urgent{background:#fee2e2;color:#991b1b}.notice-tag.tag-deadline{background:#d1d5db;color:#1f2937}.notice-tag.tag-urgent{background:#fecaca;color:#7f1d1d}.notice-tag.tag-general{background:#dbeafe;color:#0c4a6e}.notice-board-loading{text-align:center;padding:40px;color:#64748b;font-size:16px}@media (max-width: 768px){.notice-board-section{padding:20px 15px}.notice-board-header{flex-direction:column;align-items:flex-start;gap:12px;margin-bottom:20px}.header-left h2{font-size:20px}.notices-container{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.notice-card{padding:12px;min-height:100px}.notice-title-btn{font-size:12px;margin-bottom:5px}.notice-date{padding:5px 7px;min-width:42px;font-size:10px}.date-day{font-size:13px;margin-bottom:1px}.date-month{font-size:8px}.notice-meta{gap:6px;font-size:10px}.notice-time{font-size:10px}.notice-tag{padding:2px 6px;font-size:9px}}.view-all-notices-page{min-height:100vh;background:linear-gradient(135deg,#1e3c72 0%,#2a5298 100%);padding:40px 20px}.page-header{display:flex;align-items:center;gap:20px;margin-bottom:40px;max-width:1200px;margin-left:auto;margin-right:auto}.back-btn{background:white;border:none;padding:10px 20px;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease;color:#1e3c72}.back-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0003}.page-header h1{flex:1;color:#fff;font-size:32px;margin:0}.notices-count{background:rgba(255,255,255,.2);color:#fff;padding:10px 20px;border-radius:6px;font-weight:600;font-size:14px}.filters-container{background:white;padding:20px;border-radius:8px;margin-bottom:30px;max-width:1200px;margin-left:auto;margin-right:auto;display:grid;grid-template-columns:1fr 1fr auto;gap:15px;align-items:flex-end}.filter-group label{font-weight:600;color:#1e293b;margin-bottom:8px;font-size:14px}.filter-input{padding:10px 12px;border:1px solid #cbd5e1;border-radius:6px;font-size:14px;font-family:inherit;transition:all .3s ease}.clear-filters-btn{background:#e2e8f0;color:#475569;border:none;padding:10px 20px;border-radius:6px;cursor:pointer;font-size:14px;font-weight:600;transition:all .3s ease}.clear-filters-btn:hover:not(:disabled){background:#cbd5e1;transform:translateY(-2px)}.clear-filters-btn:disabled{opacity:.5;cursor:not-allowed}.notices-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px;max-width:1200px;margin-left:auto;margin-right:auto}.notice-card{background:white;border-radius:8px;box-shadow:0 2px 8px #0000001a;transition:all .3s ease;display:flex;flex-direction:column;padding:12px;position:relative;min-height:130px;border:1px solid #f0f0f0}.notice-card:hover{transform:translateY(-3px);box-shadow:0 6px 16px #667eea33;border-color:#e0e7ff}.notice-date{position:absolute;top:8px;right:8px;background:linear-gradient(135deg,#f59e0b 0%,#f97316 100%);color:#fff;padding:6px 8px;border-radius:4px;text-align:center;min-width:48px;font-weight:600;font-size:11px;box-shadow:0 2px 6px #f9731640}.date-day{font-size:14px;font-weight:700;line-height:1}.date-month{font-size:9px;margin-top:1px;opacity:.95}.card-content{flex:1;display:flex;flex-direction:column;justify-content:space-between;margin-top:25px}.notice-title{background:none;border:none;text-align:left;font-weight:600;color:#1e293b;font-size:14px;cursor:pointer;padding:0;margin:0 0 8px;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;transition:color .3s ease;line-height:1.3}.notice-title:hover:not(:disabled){color:#667eea}.notice-title:disabled{opacity:.6;cursor:not-allowed}.notice-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.notice-time{color:#64748b;font-size:11px}.notice-tag{display:inline-block;padding:3px 8px;border-radius:10px;font-size:10px;font-weight:600}.tag-general{background:#dbeafe;color:#0c4a6e}.tag-urgent{background:#fee2e2;color:#991b1b}.tag-important{background:#fcd34d;color:#78350f}.tag-deadline{background:#d1d5db;color:#1f2937}.no-results{background:white;padding:60px 20px;text-align:center;color:#64748b;font-size:16px;border-radius:8px;max-width:1200px;margin-left:auto;margin-right:auto}.loading-message{text-align:center;color:#fff;font-size:16px;padding:60px 20px}@media (max-width: 768px){.view-all-notices-page{padding:20px 15px}.page-header{flex-direction:column;align-items:flex-start;gap:15px;margin-bottom:30px}.page-header h1{font-size:24px}.filters-container{grid-template-columns:1fr;gap:12px}.notices-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px}}@media (max-width: 480px){.view-all-notices-page{padding:15px 10px}.page-header{margin-bottom:20px}.page-header h1{font-size:20px}.notices-count{font-size:12px;padding:8px 12px}.filters-container{padding:15px;grid-template-columns:1fr;gap:12px;margin-bottom:20px}.filter-group label{font-size:13px;margin-bottom:6px}.filter-input{font-size:13px;padding:8px 10px}.notices-grid{grid-template-columns:1fr;gap:10px}.notice-card{border-radius:6px;padding:10px;min-height:110px}.notice-date{top:6px;right:6px;padding:5px 6px;min-width:44px}.date-day{font-size:12px}.date-month{font-size:8px}.card-content{margin-top:22px}.notice-title{font-size:12px;margin-bottom:6px}.notice-meta{font-size:10px;gap:6px}.notice-time{font-size:10px}.notice-tag{padding:2px 6px;font-size:9px}}.modal-content{background:white;border-radius:8px;box-shadow:0 2px 10px #0000001a;max-width:400px;width:90%;overflow:hidden}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid #e0e0e0;background-color:#f5f5f5}.modal-header h2{margin:0;font-size:20px;color:#333}.close-btn{background:none;border:none;font-size:28px;cursor:pointer;color:#999;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center}.modal-form{padding:20px}.form-group{margin-bottom:15px}.form-group label{display:block;margin-bottom:5px;font-weight:600;color:#333;font-size:14px}.form-group input{width:100%;padding:10px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px;box-sizing:border-box;font-family:inherit}.form-group input:focus{outline:none;border-color:#4caf50;box-shadow:0 0 0 3px #4caf501a}.form-group input:disabled{background-color:#f5f5f5;cursor:not-allowed}.error-message{background-color:#ffebee;color:#c62828;padding:12px;border-radius:4px;margin-bottom:15px;font-size:14px;border-left:4px solid #c62828}.success-message{background-color:#e8f5e9;color:#2e7d32;padding:12px;border-radius:4px;margin-bottom:15px;font-size:14px;border-left:4px solid #4caf50}.modal-footer{display:flex;gap:10px;justify-content:flex-end;padding-top:15px;border-top:1px solid #e0e0e0}.btn-primary,.btn-secondary{padding:10px 20px;border:none;border-radius:4px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-primary:hover:not(:disabled){background-color:#45a049}.btn-secondary{background-color:#e0e0e0;color:#333}.btn-secondary:hover:not(:disabled){background-color:#d0d0d0}.btn-primary:disabled,.btn-secondary:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 768px){.modal-overlay{padding:20px}.modal-content{max-width:100%;width:100%;max-height:90vh;overflow-y:auto}.modal-header{padding:15px}.modal-header h2{font-size:18px}.modal-form{padding:15px}.form-group{margin-bottom:12px}.form-group input{padding:12px;font-size:16px}.modal-footer{flex-direction:column;gap:8px;padding-top:12px}.btn-primary,.btn-secondary{width:100%;padding:12px;font-size:14px}}@media (max-width: 480px){.modal-overlay{padding:10px}.modal-content{max-width:100%;width:100%;max-height:95vh;overflow-y:auto}.modal-header{padding:12px}.modal-header h2{font-size:16px}.close-btn{width:28px;height:28px;font-size:24px;min-width:44px;min-height:44px}.modal-form{padding:12px}.form-group{margin-bottom:10px}.form-group label{font-size:13px;font-weight:500}.form-group input,.form-group textarea,.form-group select{padding:12px;font-size:16px!important;width:100%!important;box-sizing:border-box!important}.error-message,.success-message{padding:10px;font-size:13px;margin-bottom:12px;word-wrap:break-word}.modal-footer{gap:8px}.modal-footer button{flex:1;min-height:44px}}.modal-footer{flex-direction:column;gap:8px;padding-top:10px}.btn-primary,.btn-secondary{width:100%;padding:10px;font-size:13px}.student-container{max-width:1200px;margin:0 auto;padding:20px;background:linear-gradient(135deg,#f5f7fa 0%,#c3cfe2 100%);min-height:100vh;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.student-container h1{color:#333;font-size:28px;margin-bottom:30px;text-shadow:1px 1px 2px rgba(0,0,0,.1)}.profile-card{background:white;padding:30px;border-radius:12px;box-shadow:0 4px 15px #0000001a;margin-bottom:20px;transition:transform .2s,box-shadow .2s}.profile-card:hover{transform:translateY(-2px);box-shadow:0 6px 20px #00000026}.profile-card h2{color:#2c3e50;font-size:20px;margin-bottom:20px;border-bottom:3px solid #3498db;padding-bottom:10px;display:flex;align-items:center;gap:10px}.profile-card p{font-size:16px;color:#333;margin:15px 0;display:flex;justify-content:space-between}.profile-card strong{color:#667eea;font-weight:600}.form-group label{display:block;font-weight:600;color:#2c3e50;margin-bottom:8px;font-size:14px;text-transform:uppercase;letter-spacing:.5px}.form-group input,.form-group select,.form-group textarea{transition:border-color .3s,box-shadow .3s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#3498db!important;box-shadow:0 0 5px #3498db4d}@media (max-width: 768px){.profile-card>div{grid-template-columns:1fr!important}}.attendance-progress-container{margin:20px 0;padding:15px;background:#f8f9fa;border-radius:8px;border-left:4px solid #007bff}.progress-info{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.progress-label{font-weight:600;color:#333;font-size:14px}.progress-percentage{font-size:24px;font-weight:700;color:#333}.progress-bar-wrapper{width:100%;height:32px;background:#e9ecef;border-radius:6px;overflow:hidden;border:1px solid #dee2e6;margin-bottom:10px}.progress-bar{height:100%;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:13px;text-shadow:1px 1px 2px rgba(0,0,0,.2);transition:width .5s ease;min-width:30px}.progress-text{white-space:nowrap}.progress-status{font-size:13px;font-weight:600;text-align:right}.subject-progress-item{margin-bottom:15px;padding:12px;background:white;border-radius:6px;border-left:3px solid #007bff}.subject-name{font-weight:600;color:#333;margin-bottom:8px;display:flex;justify-content:space-between}.subject-percentage{font-size:16px;font-weight:700}@media (max-width: 768px){.attendance-progress-container{padding:12px}.progress-percentage{font-size:20px}.progress-bar-wrapper{height:28px}}.attendance-container{max-width:600px;margin:0 auto;padding:20px}.attendance-container h1{color:#333;font-size:28px;margin-bottom:30px}.attendance-container form{background:white;padding:30px;border-radius:8px;box-shadow:0 2px 10px #0000001a;display:flex;flex-direction:column;gap:15px}.attendance-container input,.attendance-container select{padding:12px;border:1px solid #ddd;border-radius:4px;font-size:14px;font-family:inherit}.attendance-container input:focus,.attendance-container select:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.attendance-container button{padding:12px;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;border:none;border-radius:4px;font-size:16px;font-weight:700;cursor:pointer;transition:transform .2s}.attendance-container button:hover{transform:translateY(-2px)}.profile-edit-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.profile-edit-modal{background-color:#fff;border-radius:8px;box-shadow:0 4px 6px #0000001a;padding:30px;max-width:600px;max-height:80vh;overflow-y:auto;width:95%}.profile-edit-modal h2{color:#333;margin-bottom:20px;text-align:center}.profile-edit-form{display:flex;flex-direction:column;gap:20px}.form-section{border-bottom:1px solid #e0e0e0;padding-bottom:15px}.form-section h3{color:#06c;margin-bottom:15px;font-size:14px;text-transform:uppercase;letter-spacing:.5px}.form-section:last-of-type{border-bottom:none}.form-group{margin-bottom:15px;display:flex;flex-direction:column}.form-group label{font-weight:600;color:#333;margin-bottom:5px;font-size:14px}.form-group input,.form-group select,.form-group textarea{padding:10px;border:1px solid #ddd;border-radius:4px;font-size:14px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;transition:border-color .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#06c;box-shadow:0 0 0 3px #0066cc1a}.form-group input.read-only{background-color:#f5f5f5;cursor:not-allowed;color:#666}.form-actions{display:flex;gap:10px;margin-top:20px;justify-content:center}.btn-save,.btn-cancel{padding:10px 20px;border:none;border-radius:4px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-save{background-color:#06c;color:#fff}.btn-save:hover{background-color:#0052a3}.btn-cancel{background-color:#f0f0f0;color:#333}.btn-cancel:hover{background-color:#e0e0e0}.error-message{background-color:#ffebee;color:#c62828;padding:12px;border-radius:4px;border-left:4px solid #c62828;font-size:14px}.success-message{background-color:#e8f5e9;color:#2e7d32;padding:12px;border-radius:4px;border-left:4px solid #2e7d32;font-size:14px}@media (max-width: 600px){.profile-edit-modal{padding:20px;max-width:100%}.form-actions{flex-direction:column}.btn-save,.btn-cancel{width:100%}}.dashboard-container{display:flex;flex-direction:column;height:100vh;width:100%;background:linear-gradient(135deg,#f8fafc 0%,#ecf0f5 100%)}.navbar{background:linear-gradient(135deg,#2563eb 0%,#1e40af 100%);color:#fff;padding:1.2rem 2.5rem;display:flex;justify-content:space-between;align-items:center;box-shadow:0 8px 16px #00000026;flex-shrink:0;z-index:100;border-bottom:3px solid #1e3a8a}.navbar h1{font-size:26px;margin:0;font-weight:700;letter-spacing:.5px;display:flex;align-items:center;gap:12px}.navbar h1:before{content:"🎓";font-size:28px}.navbar nav{display:flex;gap:1.5rem;align-items:center;white-space:nowrap;flex-wrap:nowrap;justify-content:flex-end}.navbar nav span{white-space:nowrap;flex:0 0 auto;font-size:14px!important;font-weight:500;background:rgba(255,255,255,.12);padding:8px 16px;border-radius:20px;letter-spacing:.3px}.navbar button{background:rgba(255,255,255,.15);color:#fff;border:1.5px solid rgba(255,255,255,.3);padding:10px 20px!important;border-radius:10px!important;cursor:pointer;font-weight:600;transition:all .3s cubic-bezier(.4,0,.2,1);font-size:14px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.navbar button:hover{background:rgba(255,255,255,.25);border-color:#ffffff80;transform:translateY(-2px);box-shadow:0 6px 12px #00000026}.navbar button:active{transform:translateY(0);box-shadow:0 2px 4px #0000001a}.sidebar{width:250px;position:relative}.dashboard{display:flex;flex:1;overflow:hidden;width:100%;background:linear-gradient(135deg,#f8fafc 0%,#ecf0f5 100%)}.sidebar{background:linear-gradient(135deg,#f8fafc 0%,#f1f5f9 100%);width:250px;flex-shrink:0;padding:15px;box-shadow:2px 0 8px #00000014;overflow-y:auto;border-right:2px solid #e2e8f0}.sidebar nav{display:flex;flex-direction:column;gap:8px}.sidebar .nav-btn{display:block;padding:14px 16px;color:#475569;background:white;border:2px solid #e2e8f0;border-radius:10px;cursor:pointer;text-align:left;font-size:14px;transition:all .3s cubic-bezier(.4,0,.2,1);font-weight:600;letter-spacing:.3px;position:relative;overflow:hidden}.sidebar .nav-btn:before{content:"";position:absolute;left:0;top:0;width:4px;height:100%;background:#2563eb;transform:scaleY(0);transform-origin:top;transition:transform .3s cubic-bezier(.4,0,.2,1)}.sidebar .nav-btn:hover{background:linear-gradient(135deg,#f0f9ff 0%,#e0f2fe 100%);border-color:#2563eb;color:#1e40af;transform:translate(4px);box-shadow:0 4px 12px #2563eb26}.sidebar .nav-btn:hover:before{transform:scaleY(1)}.sidebar .nav-btn.active{background:linear-gradient(135deg,#2563eb 0%,#1e40af 100%);color:#fff;border-color:#1e40af;box-shadow:0 6px 16px #2563eb40;font-weight:700;transform:translate(4px)}.sidebar .nav-btn.active:before{transform:scaleY(1);background:white}.sidebar hr{margin:15px 0!important;border:none!important;border-top:2px solid #e2e8f0!important;background:linear-gradient(90deg,transparent 0%,#2563eb 50%,transparent 100%);height:1px!important}.sidebar>nav>div{padding:12px 8px!important;font-size:11px!important;font-weight:800!important;color:#1e293b!important;text-transform:uppercase!important;letter-spacing:1.2px!important;background:linear-gradient(135deg,#f0f9ff 0%,#e0f2fe 100%);border-radius:6px;margin:5px 0;border-left:4px solid #2563eb}.main-content{flex:1;display:flex;flex-direction:column;overflow-y:auto;width:100%;background:linear-gradient(135deg,#f8fafc 0%,#ecf0f5 100%);position:relative}.main-content>*:not(.footer){padding:32px;background:linear-gradient(135deg,#ffffff 0%,#f9fafb 100%);width:100%;position:relative;flex-shrink:0}.footer{flex-shrink:0!important;padding:20px 120px 20px 15px!important;text-align:center;background:linear-gradient(135deg,#ffffff 0%,#f8fafc 100%)!important;border-top:2px solid #e2e8f0;font-size:12px;color:#64748b;margin-top:auto;display:flex;justify-content:space-between;align-items:center;gap:20px;box-shadow:0 -4px 12px #00000014}.management-container{background:white;padding:30px;border-radius:12px;box-shadow:0 4px 12px #00000014;border:1px solid #e2e8f0}.management-container h1{color:#1e293b;margin-bottom:25px;border-bottom:3px solid #2563eb;padding-bottom:15px;font-size:26px;font-weight:700;letter-spacing:.5px}.action-btn{color:#fff;border:none;padding:12px 24px;border-radius:8px;cursor:pointer;font-weight:700;margin-bottom:20px;transition:all .3s cubic-bezier(.4,0,.2,1);font-size:14px;letter-spacing:.5px;box-shadow:0 4px 12px #2563eb33;position:relative;overflow:hidden}.action-btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:rgba(255,255,255,.2);transition:left .3s cubic-bezier(.4,0,.2,1)}.action-btn:hover{transform:translateY(-3px);box-shadow:0 8px 20px #2563eb59;background:linear-gradient(135deg,#1e40af 0%,#1a3a8a 100%)}.action-btn:hover:before{left:100%}.action-btn:active{transform:translateY(-1px);box-shadow:0 4px 12px #2563eb33}.form-box{background:linear-gradient(135deg,#f8fafc 0%,#f1f5f9 100%);padding:24px;border-radius:10px;margin-bottom:20px;border-left:5px solid #2563eb;box-shadow:0 2px 8px #0000000d;border:1px solid #e2e8f0}.form-box h3{margin-top:0;color:#1e293b;font-size:16px;font-weight:700;letter-spacing:.3px}.form-box form{display:flex;flex-direction:column;gap:14px}.form-box input,.form-box select{padding:11px 14px;border:2px solid #e2e8f0;border-radius:8px;font-size:14px;background:white;transition:all .3s cubic-bezier(.4,0,.2,1);font-family:inherit}.form-box input:focus,.form-box select:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a;background:white}.form-box button{color:#fff;border:none;padding:11px 20px;border-radius:8px;cursor:pointer;font-weight:700;transition:all .3s cubic-bezier(.4,0,.2,1);font-size:14px;letter-spacing:.5px;box-shadow:0 4px 12px #2563eb33}.form-box button:hover{background:linear-gradient(135deg,#1e40af 0%,#1a3a8a 100%);transform:translateY(-2px);box-shadow:0 6px 16px #2563eb4d}.filter-box{margin-bottom:20px;padding:15px;background:linear-gradient(135deg,#f8fafc 0%,#f1f5f9 100%);border-radius:8px;border:2px solid #e2e8f0}.filter-box input{width:100%;padding:12px 14px;border:2px solid #e2e8f0;border-radius:8px;font-size:14px;background:white;transition:all .3s cubic-bezier(.4,0,.2,1)}.filter-box input:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.list-container{margin-top:20px;overflow-x:auto;border-radius:10px;box-shadow:0 2px 8px #0000000d}table{width:100%;border-collapse:collapse;margin-top:15px}table thead{background:linear-gradient(135deg,#2563eb 0%,#1e40af 100%);color:#fff;font-weight:700}table th{padding:14px;text-align:left;font-size:14px;background-color:#2563eb;letter-spacing:.3px}table td{padding:13px 14px;border-bottom:1px solid #e2e8f0;font-size:14px;color:#475569}table tbody tr{transition:all .3s cubic-bezier(.4,0,.2,1);background:white}table tbody tr:hover{background:linear-gradient(135deg,#f8fafc 0%,#f1f5f9 100%);box-shadow:inset 0 0 10px #2563eb14}table tbody tr:nth-child(odd){background:#f9fafb}table tbody tr:nth-child(odd):hover{background:linear-gradient(135deg,#f8fafc 0%,#f1f5f9 100%)}.edit-btn,.delete-btn,.view-btn,.download-btn{padding:8px 14px;margin:0 4px;border:none;border-radius:6px;cursor:pointer;font-size:12px;font-weight:700;transition:all .3s cubic-bezier(.4,0,.2,1);letter-spacing:.3px}.edit-btn{background:linear-gradient(135deg,#10b981 0%,#059669 100%);color:#fff;box-shadow:0 2px 6px #10b9814d}.edit-btn:hover{background:linear-gradient(135deg,#059669 0%,#047857 100%);transform:translateY(-2px);box-shadow:0 4px 12px #10b98166}.delete-btn{background:linear-gradient(135deg,#ef4444 0%,#dc2626 100%);color:#fff;box-shadow:0 2px 6px #ef44444d}.delete-btn:hover{background:linear-gradient(135deg,#dc2626 0%,#b91c1c 100%);transform:translateY(-2px);box-shadow:0 4px 12px #ef444466}.view-btn{background:linear-gradient(135deg,#3b82f6 0%,#2563eb 100%);color:#fff;box-shadow:0 2px 6px #3b82f64d}.view-btn:hover{background:linear-gradient(135deg,#2563eb 0%,#1e40af 100%);transform:translateY(-2px);box-shadow:0 4px 12px #3b82f666}.download-btn{background:linear-gradient(135deg,#f59e0b 0%,#d97706 100%);color:#fff;box-shadow:0 2px 6px #f59e0b4d}.download-btn:hover{background:linear-gradient(135deg,#d97706 0%,#b45309 100%);transform:translateY(-2px);box-shadow:0 4px 12px #f59e0b66}.stats-box{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin-top:20px}.stat-item{background:linear-gradient(135deg,#2563eb 0%,#1e40af 100%);color:#fff;padding:24px;border-radius:10px;text-align:center;box-shadow:0 4px 12px #2563eb40;transition:all .3s cubic-bezier(.4,0,.2,1);border:1px solid rgba(255,255,255,.1)}.stat-item:hover{transform:translateY(-4px);box-shadow:0 8px 20px #2563eb59}.stat-item h4{margin:0 0 12px;font-size:13px;opacity:.95;letter-spacing:.3px;font-weight:700}.stat-item p{margin:0;font-size:32px;font-weight:800;letter-spacing:-.5px}.badge{display:inline-block;background:linear-gradient(135deg,#2563eb 0%,#1e40af 100%);color:#fff;padding:6px 14px;border-radius:20px;font-size:12px;font-weight:700;box-shadow:0 2px 6px #2563eb33;letter-spacing:.3px}.report-filters{display:flex;gap:10px;margin-bottom:20px;flex-wrap:wrap}.filter-btn{background:#f0f0f0;color:#333;border:2px solid transparent;padding:10px 20px;border-radius:4px;cursor:pointer;font-weight:600;transition:all .2s}.filter-btn:hover{background:#e0e0e0}.filter-btn.active{background:#667eea;color:#fff;border-color:#667eea}.quick-stats{margin-top:30px;padding-top:20px;border-top:1px solid #eee}.quick-stats h3{color:#333;margin-bottom:15px}.empty-state{text-align:center;padding:40px 20px;color:#999}.subject-item{background:#f9f9f9;padding:15px;margin-bottom:12px;border-radius:4px;border-left:4px solid #667eea}.subject-item h3{margin:0 0 8px;color:#333}.subject-item p{margin:0;color:#666;font-size:14px}.content-placeholder{background:white;padding:40px;border-radius:8px;text-align:center;color:#999;font-size:18px;min-height:200px;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 4px #0000001a}.menu-btn,.close-btn{display:none!important}@media (max-width: 1024px){.sidebar{width:220px}.sidebar .nav-btn{padding:10px 12px;font-size:13px}}.desktop-logout-btn{display:inline-block!important}.mobile-logout-btn{display:none!important}@media (max-width: 768px){.desktop-logout-btn{display:none!important}.mobile-logout-btn{display:block!important}.navbar{padding:1rem;flex-direction:column;gap:.75rem;align-items:stretch;border-bottom:2px solid #1e3a8a}.navbar>div{padding:0!important}.navbar h1{font-size:20px;text-align:center;width:100%;letter-spacing:.3px}.navbar nav{width:100%;gap:.5rem;justify-content:center;flex-wrap:wrap;flex-direction:row}.navbar nav span{width:100%;text-align:center;font-size:12px;padding:6px 12px;background:rgba(255,255,255,.1);border-radius:16px}.navbar button{flex:1;min-width:90px;padding:8px 12px;font-size:12px;border-radius:6px}.navbar button:hover{background:rgba(255,255,255,.2);transform:translateY(-1px);box-shadow:0 4px 8px #0000001f}.dashboard{flex-direction:column}.sidebar nav{flex-direction:column;flex-wrap:wrap;gap:5px}.sidebar .nav-btn{flex:1;min-width:auto;width:100%;padding:10px;font-size:13px}.main-content{padding:15px}.main-content>*:not(.footer){padding:15px}.stats-box{grid-template-columns:1fr}table{font-size:12px}.navbar{flex-direction:column;gap:10px;padding:12px}.navbar h1{font-size:18px}.navbar nav{flex-direction:row;gap:8px;width:100%;white-space:normal;flex-wrap:wrap;align-items:center}.navbar nav span{flex:1 1 auto;word-wrap:break-word;white-space:normal;min-width:90px;font-size:11px;padding:5px 10px;background:rgba(255,255,255,.1);border-radius:14px}.navbar button{padding:6px 10px;font-size:11px;flex-shrink:0;border-radius:6px}.form-box{padding:15px}.form-box input,.form-box select,.form-box textarea{font-size:16px;padding:12px;width:100%;box-sizing:border-box}.action-btn{width:100%;padding:12px;min-height:44px}.edit-btn,.delete-btn,.view-btn,.download-btn{padding:4px 6px;font-size:11px;margin:2px}table{display:block;overflow-x:auto;white-space:nowrap}table th,table td{padding:8px}.management-container{padding:15px;border-radius:4px}.report-filters{gap:5px;flex-wrap:wrap}.filter-btn{padding:8px 12px;font-size:12px}.routine-timetable-container{overflow-x:auto;-webkit-overflow-scrolling:touch;width:100%;max-width:100%;padding:10px 0}.routine-timetable-container table{font-size:10px!important;width:100%!important;display:table!important;table-layout:fixed!important;border-collapse:collapse!important;min-width:800px}.routine-timetable-container thead{display:table-header-group;position:sticky;top:0;z-index:10}.routine-timetable-container tbody{display:table-row-group}.routine-timetable-container tr{display:table-row}.routine-timetable-container thead tr{display:table-row;height:60px}.routine-timetable-container th{display:table-cell!important;padding:10px 6px!important;width:110px!important;white-space:normal!important;word-break:break-word!important;border:1px solid #bdc3c7!important;background-color:#2c3e50!important;color:#fff!important;font-size:10px!important;font-weight:700!important;text-align:center!important;line-height:1.3!important;vertical-align:middle!important;height:60px!important;box-sizing:border-box!important;overflow:visible!important;text-overflow:clip!important}.routine-timetable-container th:first-child{width:90px!important;padding:12px 8px!important;font-size:11px!important;height:60px!important}.routine-timetable-container td{display:table-cell!important;padding:10px 6px!important;width:110px!important;white-space:normal!important;word-break:break-word!important;border:1px solid #ecf0f1!important;text-align:center!important;vertical-align:top!important;min-height:120px!important;font-size:9px!important;box-sizing:border-box!important;overflow:visible!important}.routine-timetable-container td:first-child{width:90px!important;padding:12px 8px!important;font-size:11px!important;font-weight:700!important;background-color:#e8f4f8!important;min-height:80px!important}.routine-timetable-container tbody tr:nth-child(odd) td{background-color:#f8f9fa!important}.routine-timetable-container tbody tr:nth-child(2n) td{background-color:#fff!important}.routine-timetable-container td>div{font-size:9px!important;line-height:1.4!important;overflow:visible!important;display:block!important;-webkit-line-clamp:unset!important;line-clamp:unset!important;-webkit-box-orient:unset!important}.navbar>div{gap:4px!important}.navbar{display:flex;justify-content:space-between;align-items:center;padding:10px}.navbar h1{font-size:16px;margin:0}.menu-btn{font-size:19px!important;background:none!important;border:none!important;color:#fff;cursor:pointer;display:block!important;padding:2px 4px!important;margin:0!important}.sidebar{position:fixed;top:0;right:-100%;width:75%;height:100%;background:white;z-index:1000;transition:right .3s ease;overflow-y:auto;padding:15px!important;box-shadow:-2px 0 10px #0003}.sidebar.open{right:0}.sidebar nav{display:flex;flex-direction:column;gap:5px}.sidebar .nav-btn{display:block;width:100%;text-align:left}.overlay{position:fixed;top:0;left:0;right:0;bottom:0;width:100%;height:100vh;background:rgba(0,0,0,.4);z-index:999}.close-btn{display:inline-flex!important;align-items:center;justify-content:center;font-size:20px;background:none;border:1px solid #ccc!important;cursor:pointer;padding:4px 8px!important;width:32px;height:32px;border-radius:4px;transition:all .2s ease}.close-btn:hover{background-color:#f0f0f0}}@media (max-width: 480px){.dashboard-container{height:auto}.navbar{padding:10px;gap:8px}.navbar h1{font-size:16px}.navbar nav{gap:4px}.navbar button{padding:8px 5px;font-size:11px;border-radius:15px}.sidebar{padding:8px}.sidebar .nav-btn{padding:8px;font-size:12px}.main-content>*:not(.footer){padding:10px}.management-container{padding:10px}.management-container h1{font-size:18px;margin-bottom:15px}.form-box{padding:12px}.form-box input,.form-box select{font-size:16px}.stats-box{gap:10px}.stat-item{padding:15px}.stat-item p{font-size:20px}.action-btn{width:100%;padding:12px;font-size:14px}.edit-btn,.delete-btn,.view-btn,.download-btn{padding:4px 8px;font-size:10px;margin:2px 1px}table{font-size:11px}table th,table td{padding:6px}.filter-box input{padding:10px;font-size:16px}.content-placeholder{padding:20px;font-size:14px}.empty-state{padding:20px 10px}.footer{padding:15px!important;font-size:11px;flex-direction:column;gap:10px;align-items:flex-start}.footer>div{width:100%;text-align:left}.footer div p{margin:5px 0!important}input[type=text],input[type=email],input[type=password],input[type=date],input[type=number],select,textarea{width:100%!important;box-sizing:border-box!important;font-size:16px!important}.modal-overlay{padding:10px!important}.modal-content{max-width:100%!important;width:calc(100% - 20px)!important;max-height:95vh!important}.btn,button,.action-btn{min-height:44px!important;font-size:14px!important}table{display:block!important;overflow-x:auto!important;width:100%!important;border:1px solid #ddd;border-radius:4px}thead{display:table!important;width:100%!important;background-color:#f8f9fa}tbody{display:block!important;width:100%!important;overflow-y:auto!important}tbody tr{display:flex!important}tbody td{display:flex!important;align-items:center;max-width:150px}p,span,div{word-wrap:break-word!important;overflow-wrap:break-word!important}.grid,.form-grid{grid-template-columns:1fr!important}.container{padding:10px!important}.section{margin-bottom:15px!important}}.notification-center{padding:24px;background:#f5f5f5;border-radius:8px;min-height:calc(100vh - 150px)}.notif-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;gap:16px}.notif-header h2{color:#333;font-size:24px;font-weight:600;margin:0}.btn-new-notif{background-color:#007bff;color:#fff;padding:10px 20px;border:none;border-radius:4px;font-size:14px;font-weight:600;cursor:pointer;transition:background-color .3s;white-space:nowrap}.btn-new-notif:hover{background-color:#0056b3}.create-notif-form{background:white;padding:20px;border-radius:8px;margin-bottom:24px;box-shadow:0 1px 3px #0000001a}.create-notif-form h3{color:#333;margin-top:0;margin-bottom:16px;font-size:18px;font-weight:600}.create-notif-form form{display:flex;flex-direction:column;gap:16px}.form-group input[type=text],.form-group input[type=email],.form-group select,.form-group textarea{padding:10px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px;font-family:inherit;box-sizing:border-box}.form-group textarea{resize:vertical;min-height:100px}.btn-create{background-color:#28a745;color:#fff;padding:12px 32px;border:none;border-radius:4px;font-size:14px;font-weight:600;cursor:pointer;transition:background-color .3s;width:fit-content}.btn-create:hover:not(:disabled){background-color:#218838}.btn-create:disabled{background-color:#6c757d;cursor:not-allowed}.notif-container{display:grid;grid-template-columns:350px 1fr;gap:20px;height:calc(100vh - 350px)}@media (max-width: 1200px){.notif-container{grid-template-columns:1fr;height:auto}}.notif-list{background:white;border-radius:8px;padding:16px;box-shadow:0 1px 3px #0000001a;overflow-y:auto}.notif-list h3{color:#333;margin-top:0;margin-bottom:16px;font-size:16px;font-weight:600}.no-notif{text-align:center;color:#999;padding:20px;font-style:italic}.notif-item{padding:12px;border:1px solid #e0e0e0;border-radius:4px;margin-bottom:8px;cursor:pointer;transition:all .3s}.notif-item:hover{background-color:#f5f5f5;border-color:#007bff}.notif-item.active{background-color:#e7f3ff;border-color:#007bff}.notif-item h4{color:#333;font-size:14px;font-weight:600;margin:0 0 6px}.notif-preview{color:#666;font-size:12px;margin:4px 0;line-height:1.3}.notif-time{display:block;color:#999;font-size:11px;margin-top:6px}.notif-detail{background:white;border-radius:8px;padding:20px;box-shadow:0 1px 3px #0000001a;overflow-y:auto}.no-selection{display:flex;align-items:center;justify-content:center;height:100%;color:#999;font-style:italic}.detail-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid #e0e0e0}.detail-header h2{color:#333;font-size:20px;font-weight:600;margin:0;flex:1}.btn-delete{background-color:#dc3545;color:#fff;padding:8px 16px;border:none;border-radius:4px;font-size:12px;font-weight:600;cursor:pointer;transition:background-color .3s;white-space:nowrap}.detail-meta{background:#f0f8ff;padding:12px;border-radius:4px;margin-bottom:16px;font-size:13px}.detail-meta p{margin:4px 0}.detail-meta strong{color:#333}.detail-content{color:#555;line-height:1.6;margin-bottom:24px;padding:16px;background:#fafafa;border-radius:4px;border-left:4px solid #007bff}.replies-section{margin-top:24px;padding-top:24px;border-top:1px solid #e0e0e0}.replies-section h3{color:#333;font-size:16px;font-weight:600;margin:0 0 16px}.replies-list{margin-bottom:16px;max-height:300px;overflow-y:auto}.no-replies{text-align:center;color:#999;padding:16px;font-style:italic}.reply-item{background:#f9f9f9;padding:12px;border-radius:4px;margin-bottom:8px;border-left:3px solid #28a745}.reply-header{display:flex;align-items:center;gap:8px;margin-bottom:6px;font-size:13px}.reply-header strong{color:#333}.reply-role{background-color:#e8f4f8;color:#0056b3;padding:2px 8px;border-radius:12px;font-size:11px;font-weight:600}.reply-time{color:#999;margin-left:auto;font-size:11px}.reply-content{color:#555;font-size:13px;margin:0;line-height:1.4}.reply-form{display:flex;flex-direction:column;gap:8px}.reply-form textarea{padding:10px 12px;border:1px solid #ddd;border-radius:4px;font-size:13px;font-family:inherit;resize:vertical}.btn-reply{background-color:#28a745;color:#fff;padding:10px 20px;border:none;border-radius:4px;font-size:13px;font-weight:600;cursor:pointer;transition:background-color .3s;width:fit-content}.btn-reply:hover:not(:disabled){background-color:#218838}.btn-reply:disabled{background-color:#6c757d;cursor:not-allowed}@media (max-width: 768px){.notif-header{flex-direction:column;align-items:flex-start}.notif-container{grid-template-columns:1fr;height:auto}.notif-list,.notif-detail{max-height:none}.detail-header{flex-direction:column}}.assignment-container,.assignments-container{padding:30px;background:linear-gradient(135deg,#f5f7fa 0%,#c3cfe2 100%);min-height:100vh;max-width:1400px;margin:0 auto}.assignments-container h1{color:#333;margin-bottom:30px;font-size:32px;font-weight:700}.assignment-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;background:rgba(255,255,255,.95);padding:20px;border-radius:12px;box-shadow:0 4px 15px #0000001a}.assignment-header h2{margin:0;color:#333;font-size:28px}.assignments-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px}.assignment-card{background:white;border-radius:12px;padding:20px;box-shadow:0 4px 15px #0000001a;transition:transform .3s,box-shadow .3s;border-left:4px solid #667eea;display:flex;flex-direction:column}.assignment-card:hover{transform:translateY(-5px);box-shadow:0 8px 20px #00000026}.assignment-card h3{margin:0 0 10px;color:#333;font-size:18px}.status-badge{display:inline-block;padding:6px 12px;border-radius:20px;font-size:12px;font-weight:700;color:#fff;margin-bottom:12px;width:fit-content}.status-badge.not-submitted{background-color:#999}.status-badge.submitted{background-color:#2196f3}.status-badge.late{background-color:#ff9800}.status-badge.graded{background-color:#4caf50}.btn-primary,.btn-submit,.btn-resubmit,.btn-small{padding:10px 20px;background-color:#667eea;color:#fff;border:none;border-radius:6px;cursor:pointer;font-weight:700;font-size:14px;transition:all .3s ease}.btn-primary:hover,.btn-submit:hover{background-color:#5568d3;transform:translateY(-2px)}.btn-resubmit{background-color:#ff9800}.btn-resubmit:hover{background-color:#f57c00}.btn-delete{background-color:#f44336;padding:8px 16px;font-size:12px}.btn-delete:hover{background-color:#d32f2f}.btn-grade{background-color:#2196f3;padding:8px 16px;font-size:12px}.btn-grade:hover{background-color:#1976d2}.btn-cancel{background-color:#ddd;color:#333}.btn-cancel:hover{background-color:#bbb}.btn-small{padding:6px 12px;font-size:12px;margin:5px}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.modal-content{background:white;border-radius:12px;padding:30px;max-width:600px;width:90%;max-height:80vh;overflow-y:auto;box-shadow:0 4px 20px #0000004d}.modal-content h2,.modal-content h3{margin-top:0;color:#333;margin-bottom:20px}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;font-weight:700;color:#333}.form-group input,.form-group textarea,.form-group select{width:100%;padding:10px;border:1px solid #ddd;border-radius:4px;font-size:14px;font-family:inherit;box-sizing:border-box}.form-group textarea{min-height:150px;resize:vertical;font-family:Courier New,monospace}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.submissions-table{background:white;border-radius:8px;overflow:hidden;box-shadow:0 2px 8px #0000001a;margin:20px 0}.submissions-table table{width:100%;border-collapse:collapse}.submissions-table th{background-color:#f5f5f5;padding:15px;text-align:left;font-weight:700;border-bottom:2px solid #ddd;color:#333}.submissions-table td{padding:15px;border-bottom:1px solid #eee}.submissions-table tbody tr:hover{background-color:#f9f9f9}.submission-info,.assignment-meta{background-color:#f9f9f9;padding:12px;border-radius:4px;margin-bottom:12px;font-size:14px;border-left:3px solid #2196f3}.submission-info{background-color:#e8f5e9;border-left-color:#4caf50}.error-message{background-color:#ffebee;color:#c62828;padding:15px;border-radius:4px;margin-bottom:20px;border-left:4px solid #ef5350}.success-message{background-color:#e8f5e9;color:#2e7d32;padding:15px;border-radius:4px;margin-bottom:20px;border-left:4px solid #4caf50}.loading{text-align:center;padding:40px;color:#666;font-size:16px}.empty-state{text-align:center;padding:60px 20px;background:white;border-radius:8px;color:#999}.filter-buttons{display:flex;gap:10px;margin-bottom:20px;flex-wrap:wrap}.filter-btn{padding:8px 16px;background-color:#ddd;color:#333;border:none;border-radius:4px;cursor:pointer;font-weight:700;transition:all .3s ease}.filter-btn.active{background-color:#667eea;color:#fff}.filter-btn:hover{background-color:#ccc}.filter-btn.active:hover{background-color:#5568d3}@media (max-width: 768px){.assignment-container,.assignments-container{padding:15px}.assignment-header{flex-direction:column;text-align:center;gap:15px}.assignment-header h2{font-size:24px}.assignments-grid{grid-template-columns:1fr}.modal-content{width:95%;padding:20px}.filter-buttons{flex-direction:column}.filter-btn{width:100%}}@media (max-width: 480px){.assignments-container h1{font-size:24px}.assignment-card h3{font-size:16px}.modal-content{max-height:90vh}.btn-primary{width:100%}}.assignment-card .description{color:#666;font-size:14px;margin:10px 0;line-height:1.5}.assignment-meta{display:flex;flex-direction:column;gap:8px;margin:15px 0;font-size:13px;color:#555}.assignment-meta span{display:flex;align-items:center;gap:8px}.assignment-actions{display:flex;gap:10px;margin-top:15px}.btn-primary,.btn-secondary,.btn-danger,.btn-small,.btn-danger-small,.btn-secondary-small,.btn-warning{padding:8px 16px;border:none;border-radius:6px;cursor:pointer;font-size:13px;font-weight:600;transition:all .3s}.btn-primary:hover{background:#5568d3;transform:scale(1.05)}.btn-secondary{background:#6c757d;color:#fff}.btn-secondary:hover{background:#5a6268}.btn-danger{background:#dc3545;color:#fff;flex:1}.btn-danger:hover{background:#c82333}.btn-small{padding:6px 12px;background:#17a2b8;color:#fff}.btn-small:hover{background:#138496}.btn-danger-small{padding:6px 12px;background:#dc3545;color:#fff}.btn-secondary-small{padding:6px 12px;background:#6c757d;color:#fff}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.1)}}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);display:flex;justify-content:center;align-items:center;z-index:1000}.modal-content{background:white;padding:30px;border-radius:12px;box-shadow:0 10px 40px #0000004d;max-width:500px;width:90%;max-height:90vh;overflow-y:auto}.modal-content h3{margin-top:0;color:#333}.modal-content form{display:flex;flex-direction:column;gap:15px}.modal-content input,.modal-content textarea,.modal-content select{padding:10px;border:1px solid #ddd;border-radius:6px;font-size:14px;font-family:inherit}.modal-content input:focus,.modal-content textarea:focus,.modal-content select:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.modal-actions{display:flex;gap:10px;margin-top:20px}.modal-actions button{flex:1}.loading{text-align:center;padding:40px;background:white;border-radius:12px;color:#666}.marks-management-container{max-width:1200px;margin:0 auto;padding:20px;background:white}.marks-header{margin-bottom:30px;border-bottom:3px solid #6366f1;padding-bottom:15px}.marks-header h2{color:#333;margin:0 0 5px;font-size:28px}.marks-header p{color:#666;margin:0;font-size:14px}.alert{padding:15px;margin-bottom:20px;border-radius:6px;border-left:4px solid;animation:slideIn .3s ease-out}.alert-success{background:#ecf7f1;color:#0f5132;border-color:#7d7}.alert-error{background:#fef1f1;color:#a91e2c;border-color:#ff6b6b}@keyframes slideIn{0%{transform:translateY(-20px);opacity:0}to{transform:translateY(0);opacity:1}}.filters-section{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-bottom:30px;padding:20px;background:#f8f9fa;border-radius:8px;border:1px solid #e9ecef}.filter-group label{display:block;font-weight:600;margin-bottom:8px;color:#333;font-size:14px}.form-select{width:100%;padding:12px;border:2px solid #e9ecef;border-radius:6px;font-size:14px;background:white;cursor:pointer;transition:border-color .2s}.form-select:hover:not(:disabled){border-color:#6366f1}.form-select:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a}.form-select:disabled{background:#e9ecef;cursor:not-allowed;color:#999}.marks-form-section{background:white;padding:25px;border-radius:8px;box-shadow:0 2px 8px #00000014;margin-bottom:30px;border:1px solid #e9ecef}.marks-form-section h3{margin-top:0;margin-bottom:20px;color:#333;font-size:20px}.marks-section{margin-bottom:25px}.marks-section h4{color:#555;margin:0 0 15px;padding-bottom:10px;border-left:4px solid #6366f1;padding-left:10px;font-size:16px}.marks-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:15px}.mark-input-group label{display:block;font-weight:500;margin-bottom:6px;color:#555;font-size:13px}.form-input{width:100%;padding:10px;border:2px solid #e9ecef;border-radius:6px;font-size:14px;transition:border-color .2s;box-sizing:border-box}.form-input:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a}.form-textarea{width:100%;padding:10px;border:2px solid #e9ecef;border-radius:6px;font-family:inherit;font-size:14px;resize:vertical;box-sizing:border-box;transition:border-color .2s}.form-textarea:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a}.marks-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;padding:20px;background:#f0f4ff;border-radius:6px;margin-bottom:20px}.summary-item{display:flex;justify-content:space-between;align-items:center}.summary-item span:first-child{color:#555;font-weight:500}.summary-item .value{font-weight:700;font-size:18px;color:#6366f1}.summary-item .value.pass{color:#10b981}.summary-item .value.fail{color:#ef4444}.button-group{display:flex;gap:10px;margin-top:20px}.btn{padding:12px 24px;border:none;border-radius:6px;font-size:15px;font-weight:600;cursor:pointer;transition:all .2s}.btn-primary{background:#6366f1;color:#fff;flex:1}.btn-primary:hover:not(:disabled){background:#4f46e5;box-shadow:0 4px 12px #6366f133}.btn-primary:disabled{background:#ccc;cursor:not-allowed}.btn-secondary{background:#ef4444;color:#fff;flex:1}.btn-secondary:hover{background:#dc2626;box-shadow:0 4px 12px #ef444433}.marks-list-section{background:white;padding:25px;border-radius:8px;box-shadow:0 2px 8px #00000014;border:1px solid #e9ecef}.marks-list-section h3{margin-top:0;margin-bottom:20px;color:#333;font-size:20px}.table-responsive{overflow-x:auto}.marks-table{width:100%;border-collapse:collapse;font-size:14px}.marks-table thead{background:#f8f9fa}.marks-table th{padding:15px;text-align:left;font-weight:600;border-bottom:2px solid #e9ecef}.marks-table td{padding:15px;border-bottom:1px solid #e9ecef}.marks-table tbody tr:hover{background:#f8f9fa}.marks-table td.pass{color:#10b981;font-weight:600}.marks-table td.fail{color:#ef4444;font-weight:600}.actions{display:flex;gap:10px}.btn-icon{background:none;border:none;font-size:18px;cursor:pointer;transition:transform .2s;padding:5px}.btn-icon:hover{transform:scale(1.2)}@media (max-width: 768px){.marks-management-container{padding:10px}.filters-section{grid-template-columns:1fr;gap:15px}.marks-grid{grid-template-columns:1fr}.marks-summary{grid-template-columns:1fr;gap:10px}.button-group{flex-direction:column-reverse}.marks-table{font-size:12px}.marks-table th,.marks-table td{padding:10px}.marks-header h2{font-size:22px}}@media (max-width: 480px){.marks-management-container{padding:5px}.marks-table th,.marks-table td{padding:8px}.marks-header h2{font-size:18px}.btn{padding:10px 15px;font-size:13px}}.phi-chat-container{position:fixed;bottom:20px;right:20px;width:380px;height:600px;background:white;border-radius:12px;box-shadow:0 5px 40px #00000029;display:flex;flex-direction:column;z-index:10000;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;animation:slideUp .3s ease-in-out}@keyframes slideUp{0%{opacity:0;transform:translateY(100px)}to{opacity:1;transform:translateY(0)}}.phi-chat-header{padding:12px 16px;border-radius:12px 12px 0 0;display:flex;justify-content:space-between;align-items:center;min-height:50px;box-shadow:0 2px 8px #0000001a}.phi-close-btn{background:rgba(255,255,255,.2);border:none;color:#fff;cursor:pointer;font-size:20px;padding:0 6px;border-radius:10px;transition:all .2s ease;width:50px}.phi-close-btn:hover{background:rgba(255,255,255,.4);transform:scale(1.1)}.phi-chat-messages{flex:1;overflow-y:auto;padding:16px;background:#f5f5f5;display:flex;flex-direction:column;gap:12px}.phi-welcome-message{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;text-align:center;color:#666}.phi-welcome-message h3{margin:10px 0 5px;color:#333;font-size:18px}.phi-welcome-message p{margin:5px 0;font-size:13px;line-height:1.4}.phi-message{display:flex;gap:8px;align-items:flex-end;animation:fadeIn .3s ease-in-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.phi-message-user{justify-content:flex-end}.phi-message-assistant{justify-content:flex-start}.phi-message-icon{font-size:18px;min-width:24px}.phi-message-bubble{padding:10px 14px;border-radius:12px;max-width:75%;word-wrap:break-word;line-height:1.4;font-size:13px}.phi-bubble-user{background:#007bff;color:#fff;border-bottom-right-radius:4px;box-shadow:0 2px 4px #007bff33}.phi-bubble-assistant{background:white;color:#333;border:1px solid #e0e0e0;border-bottom-left-radius:4px;box-shadow:0 2px 4px #0000001a}.phi-typing{padding:10px 16px!important}.phi-typing span{display:inline-block;width:6px;height:6px;border-radius:50%;background:#999;margin:0 2px;animation:typing 1.4s infinite}.phi-typing span:nth-child(2){animation-delay:.2s}.phi-typing span:nth-child(3){animation-delay:.4s}@keyframes typing{0%,60%,to{opacity:.5;transform:translateY(0)}30%{opacity:1;transform:translateY(-6px)}}.phi-chat-input-form{display:flex;padding:12px;gap:8px;background:white;border-top:1px solid #e0e0e0;border-radius:0 0 12px 12px}.phi-chat-input{flex:1;padding:10px 12px;border:1px solid #ddd;border-radius:20px;font-size:13px;font-family:inherit;transition:all .2s ease;outline:none}.phi-chat-input:focus{border-color:#007bff;box-shadow:0 0 0 3px #007bff1a}.phi-chat-input:disabled{background:#f5f5f5;color:#999;cursor:not-allowed}.phi-chat-send-btn{padding:8px 16px;background:#007bff;color:#fff;border:none;border-radius:20px;cursor:pointer;font-size:16px;transition:all .2s ease;display:flex;align-items:center;justify-content:center;min-width:40px}.phi-chat-send-btn:hover:not(:disabled){background:#0056b3;transform:scale(1.05)}.phi-chat-send-btn:disabled{background:#ccc;cursor:not-allowed}@media (max-width: 600px){.phi-chat-container{width:calc(100% - 20px);height:80vh;bottom:10px;right:10px;left:10px}.phi-message-bubble{max-width:90%}}.phi-bubble-assistant ul,.phi-bubble-assistant ol{margin:8px 0;padding-left:24px;line-height:1.6}.phi-bubble-assistant li{margin:4px 0;list-style-position:outside;word-wrap:break-word;overflow-wrap:break-word}.phi-bubble-assistant h3{margin:10px 0 8px;font-size:14px;font-weight:600;color:#1a73e8}.phi-bubble-assistant h4{margin:8px 0 6px;font-size:13px;font-weight:600;color:#333}.phi-bubble-assistant p{margin:8px 0;line-height:1.5}.phi-bubble-assistant strong{font-weight:600;color:#1a73e8}.phi-bubble-assistant em{font-style:italic;color:#666}.phi-bubble-assistant code{background:#f0f0f0;padding:2px 6px;border-radius:3px;font-family:Courier New,monospace;font-size:12px;color:#d32f2f}.phi-bubble-assistant a{color:#1a73e8;text-decoration:none}.phi-bubble-assistant a:hover{text-decoration:underline}.phi-message-bubble{overflow-wrap:break-word;word-break:break-word}.phi-chat-messages::-webkit-scrollbar{width:6px}.phi-chat-messages::-webkit-scrollbar-track{background:#f1f1f1;border-radius:10px}.phi-chat-messages::-webkit-scrollbar-thumb{background:#888;border-radius:10px}.phi-chat-messages::-webkit-scrollbar-thumb:hover{background:#555}.my-documents-container{padding:20px;background-color:#f8f9fa;border-radius:8px;min-height:500px}.my-documents-container h2{color:#333;margin-bottom:20px;font-weight:600}.documents-filters{display:flex;gap:15px;margin-bottom:25px;flex-wrap:wrap;align-items:center}.filter-group{display:flex;flex-direction:column;gap:5px;flex:1;min-width:200px}.filter-group label{font-weight:500;color:#555;font-size:.95rem}.search-input,.filter-select{padding:8px 12px;border:1px solid #ddd;border-radius:4px;font-size:.95rem;transition:border-color .3s,box-shadow .3s}.search-input:focus,.filter-select:focus{outline:none;border-color:#4caf50;box-shadow:0 0 5px #4caf504d}.no-documents{text-align:center;padding:40px 20px;color:#999;font-style:italic}.documents-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px}.document-card{background-color:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:18px;transition:all .3s ease;box-shadow:0 2px 4px #0000000d}.document-card:hover{box-shadow:0 6px 12px #0000001f;border-color:#4caf50;transform:translateY(-2px)}.doc-header{display:flex;justify-content:space-between;align-items:start;gap:10px;margin-bottom:12px}.doc-header h4{margin:0;color:#333;font-size:1.1rem;flex:1;word-wrap:break-word}.category-badge{padding:4px 10px;border-radius:20px;font-size:.75rem;font-weight:600;white-space:nowrap;text-transform:uppercase}.doc-description{color:#666;font-size:.9rem;margin:8px 0 12px;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.doc-meta{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:15px;padding-bottom:12px;border-bottom:1px solid #f0f0f0}.meta-item{display:flex;flex-direction:column;gap:3px}.meta-label{font-size:.8rem;color:#999;font-weight:600;text-transform:uppercase}.meta-value{font-size:.95rem;color:#333}.doc-actions{display:flex;gap:8px;flex-wrap:wrap}.btn{padding:8px 14px;border:none;border-radius:4px;cursor:pointer;font-size:.9rem;font-weight:500;transition:all .3s;flex:1;min-width:100px}.btn-primary{background-color:#4caf50;color:#fff}.btn-primary:hover{background-color:#45a049;box-shadow:0 2px 8px #4caf504d}.btn-sm{padding:6px 12px;font-size:.85rem}@media (max-width: 768px){.documents-grid{grid-template-columns:1fr}.documents-filters{flex-direction:column}.filter-group{min-width:100%}}.certificate-dashboard{padding:24px;background:#f5f5f5;border-radius:8px}.certificate-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;gap:16px}.certificate-header h2{color:#333;font-size:24px;font-weight:600;margin:0}.btn-add-cert{background-color:#007bff;color:#fff;padding:10px 20px;border:none;border-radius:4px;font-size:14px;font-weight:600;cursor:pointer;transition:background-color .3s;white-space:nowrap}.btn-add-cert:hover{background-color:#0056b3}.cert-form-container{background:white;padding:20px;border-radius:8px;margin-bottom:24px;box-shadow:0 1px 3px #0000001a}.cert-form-container h3{color:#333;margin-top:0;margin-bottom:16px;font-size:18px;font-weight:600}.cert-form{display:flex;flex-direction:column;gap:16px}.form-group label{margin-bottom:8px;font-weight:500;color:#333}.form-group input[type=text],.form-group input[type=date],.form-group input[type=file],.form-group textarea{padding:10px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px;font-family:inherit;box-sizing:border-box}.form-group input[type=text]:disabled,.form-group input[type=date]:disabled,.form-group input[type=file]:disabled,.form-group textarea:disabled{background-color:#f5f5f5;cursor:not-allowed}.btn-submit{background-color:#28a745;color:#fff;padding:12px 32px;border:none;border-radius:4px;font-size:14px;font-weight:600;cursor:pointer;transition:background-color .3s;width:fit-content}.btn-submit:hover:not(:disabled){background-color:#218838}.btn-submit:disabled{background-color:#6c757d;cursor:not-allowed}.certificates-list{background:white;padding:20px;border-radius:8px;box-shadow:0 1px 3px #0000001a}.no-certs{text-align:center;color:#999;padding:40px 20px;font-style:italic}.certs-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px}@media (max-width: 768px){.certs-grid{grid-template-columns:1fr}}.cert-card{background:#f9f9f9;border:1px solid #e0e0e0;border-radius:6px;padding:16px;transition:box-shadow .3s,transform .2s}.cert-card:hover{box-shadow:0 2px 8px #0000001a;transform:translateY(-2px)}.cert-top{margin-bottom:12px}.cert-top h4{color:#333;font-size:16px;font-weight:600;margin:0 0 6px}.cert-issuer{display:inline-block;background-color:#e7f3ff;color:#0056b3;padding:4px 12px;border-radius:20px;font-size:12px;font-weight:600}.cert-dates{background:#f0f8ff;padding:10px 12px;border-radius:4px;margin:12px 0;font-size:13px}.cert-dates p{margin:4px 0}.cert-dates strong{color:#333}.cert-description{font-size:13px;color:#555;margin:12px 0;line-height:1.4}.cert-meta{font-size:12px;color:#666;background:#fafafa;padding:10px 12px;border-radius:4px;margin:12px 0}.cert-meta p{margin:4px 0}.cert-meta strong{color:#333}.cert-actions{display:flex;gap:8px;margin-top:12px}@media (max-width: 768px){.certificate-header{flex-direction:column;align-items:flex-start}.certificate-header h2{width:100%}.btn-add-cert{width:100%;text-align:center}}.cv-container{max-width:900px;margin:0 auto;padding:20px;background:#f5f5f5;min-height:100vh}.cv-form{background:white;border-radius:8px;overflow:hidden;box-shadow:0 4px 20px #0000001a}.cv-header-section{display:grid;grid-template-columns:200px 1fr;gap:40px;padding:40px;border-radius:10px;background:linear-gradient(135deg,#4566fc 0%,#9225ff 100%);color:#fff}.profile-picture-area{display:flex;flex-direction:column;align-items:center;gap:15px}.picture-container{width:140px;height:140px;border-radius:12px;overflow:hidden;background:white;border:4px solid white;display:flex;align-items:center;justify-content:center}.profile-pic{width:100%;height:100%;object-fit:cover}.picture-placeholder{font-size:48px;color:#ddd}.pic-upload-label{background:rgba(255,255,255,.2);padding:8px 16px;border-radius:6px;cursor:pointer;transition:all .3s ease;font-size:.9em;border:1px solid rgba(255,255,255,.3)}.pic-upload-label:hover{background:rgba(255,255,255,.3)}.header-info{display:flex;flex-direction:column;justify-content:center}.header-info h1{margin:0 0 10px;font-size:2.2em;font-weight:700;line-height:1.2}.header-contact{font-size:.95em;opacity:.95;margin-bottom:20px;line-height:1.6}.header-contact span{display:inline-block;margin-right:15px}.resume-section{margin-bottom:20px}.resume-upload-label{display:inline-block;background:rgba(255,255,255,.2);color:#fff;padding:10px 16px;border-radius:6px;cursor:pointer;transition:all .3s ease;border:1px solid rgba(255,255,255,.3);font-size:.9em}.resume-upload-label:hover{background:rgba(255,255,255,.3)}.download-resume-btn{display:inline-block;background:rgba(255,255,255,.2);color:#fff;padding:10px 16px;border-radius:6px;cursor:pointer;transition:all .3s ease;border:1px solid rgba(255,255,255,.3);font-size:.9em;margin-left:10px}.download-resume-btn:hover{background:rgba(255,255,255,.3)}.dob-field{display:flex;align-items:center;gap:12px}.dob-field label{margin:0;white-space:nowrap}.dob-input{flex:1;max-width:200px;padding:8px 12px;border:none;border-radius:4px;background:rgba(255,255,255,.2);color:#fff;border:1px solid rgba(255,255,255,.3);font-size:.9em}.dob-input::placeholder{color:#ffffffb3}.dob-input:focus{outline:none;background:rgba(255,255,255,.3)}.cv-content{padding:40px}.cv-section{margin-bottom:35px}.section-title{display:flex;align-items:center;gap:12px;margin-bottom:20px;padding-bottom:12px;border-bottom:3px solid #667eea}.section-icon{font-size:1.6em}.section-title h3{margin:0;font-size:1.4em;color:#333;font-weight:700}.section-content{display:flex;flex-direction:column;gap:15px}.cv-entry{background:#f9f9f9;padding:20px;border-radius:8px;border-left:4px solid #667eea;display:grid;gap:12px}.entry-field{display:flex}.entry-input{width:100%;padding:12px;border:1px solid #ddd;border-radius:6px;font-size:.95em;transition:border-color .3s ease;font-family:inherit}.entry-input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.file-input-label{width:100%;padding:12px;border:2px dashed #667eea;border-radius:6px;background:#f9f9f9;color:#667eea;cursor:pointer;display:flex;align-items:center;justify-content:center;text-align:center;font-size:.95em;font-weight:500;transition:all .3s ease}.file-input-label:hover{background:#f0f2ff;border-color:#764ba2;color:#764ba2}.remove-entry{background:#ff6b6b;color:#fff;border:none;padding:8px 12px;border-radius:4px;cursor:pointer;font-size:.9em;transition:all .3s ease;align-self:flex-start}.remove-entry:hover{background:#c92a2a}.add-entry-btn{background:#667eea;color:#fff;border:none;padding:12px 20px;border-radius:6px;cursor:pointer;font-size:.95em;font-weight:600;transition:all .3s ease;align-self:flex-start}.add-entry-btn:hover{background:#764ba2;transform:translateY(-2px);box-shadow:0 4px 12px #667eea4d}.textarea-field{width:100%;padding:12px;border:1px solid #ddd;border-radius:6px;font-size:.95em;font-family:inherit;resize:vertical;transition:all .3s ease;line-height:1.5;background:white;min-height:100px}.textarea-field:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;background:white}.cv-section:has(.textarea-field){position:relative}.cv-section .textarea-field{border-left:4px solid #667eea;background:#f9f9f9;padding:15px}.cv-section .textarea-field:focus{background:white}.custom-fields-container{display:flex;flex-direction:column;gap:15px}.custom-field-item{background:#f9f9f9;padding:15px;border-radius:8px;display:flex;justify-content:space-between;align-items:center;border-left:4px solid #667eea}.custom-field-item div{flex:1;font-size:.95em;color:#555;line-height:1.5}.custom-field-item strong{color:#333;display:block;margin-bottom:4px}.remove-custom{background:#ff6b6b;color:#fff;border:none;padding:6px 12px;border-radius:4px;cursor:pointer;font-size:.85em;transition:all .3s ease;margin-left:15px}.remove-custom:hover{background:#c92a2a}.add-custom-field{background:#f9f9f9;padding:20px;border-radius:8px;border:2px dashed #667eea;display:flex;flex-direction:column;gap:12px}.custom-key-input,.custom-value-input{padding:12px;border:1px solid #ddd;border-radius:6px;font-size:.95em;font-family:inherit;width:100%}.custom-key-input:focus,.custom-value-input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.add-custom-btn{background:#667eea;color:#fff;border:none;padding:12px 20px;border-radius:6px;cursor:pointer;font-size:.95em;font-weight:600;transition:all .3s ease;align-self:flex-start}.add-custom-btn:hover{background:#764ba2;transform:translateY(-2px);box-shadow:0 4px 12px #667eea4d}.alert{padding:16px 20px;border-radius:8px;margin-bottom:20px;font-weight:500;border-left:4px solid}.alert-error{background:#ffe5e5;color:#c92a2a;border-left-color:#c92a2a}.alert-success{background:#e6f7e6;color:#2b8a2b;border-left-color:#2b8a2b}.form-actions{padding:30px 40px;background:#f9f9f9;border-top:1px solid #eee;display:flex;gap:12px}.save-btn{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;border:none;padding:14px 32px;border-radius:8px;cursor:pointer;font-size:1em;font-weight:600;transition:all .3s ease;box-shadow:0 4px 12px #667eea4d}.save-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #667eea66}.save-btn:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 768px){.cv-container{padding:10px}.cv-header-section{grid-template-columns:1fr;gap:30px;padding:30px 20px;text-align:center}.profile-picture-area{align-items:center}.header-info h1{font-size:1.8em}.header-contact{display:flex;flex-direction:column;align-items:center}.header-contact span{display:block;margin-right:0;margin-bottom:5px}.dob-field{justify-content:center;flex-direction:column}.dob-input{max-width:100%}.cv-content{padding:20px}.section-title{flex-wrap:wrap}.custom-field-item{flex-direction:column;align-items:flex-start}.custom-field-item .remove-custom{margin-left:0;margin-top:10px}.form-actions{padding:20px;flex-direction:column}.save-btn{width:100%}}@media (max-width: 480px){.cv-header-section{padding:20px}.picture-container{width:120px;height:120px}.header-info h1{font-size:1.4em}.section-title{gap:8px}.section-icon{font-size:1.3em}.section-title h3{font-size:1.1em}.cv-entry,.cv-content{padding:15px}}.home-page-management{padding:20px;max-width:1000px;margin:0 auto}.home-page-management h2{color:#333;margin-bottom:20px;font-size:24px}.tabs{display:flex;gap:10px;margin-bottom:20px;border-bottom:2px solid #e0e0e0;flex-wrap:nowrap;overflow-x:auto;padding-bottom:10px}.tab-btn{padding:10px 20px;border:none;background:none;color:#666;font-size:15px;font-weight:500;cursor:pointer;border-bottom:3px solid transparent;transition:all .3s ease}.tab-btn:hover{color:#524f4f}.tab-btn.active{color:#fdfdfd;border-bottom-color:#667eea}.tab-content{background:white;border:1px solid #e0e0e0;border-radius:6px;padding:10px}.form-container{display:flex;flex-direction:column;gap:20px}.form-container h3{color:#333;margin:0;font-size:20px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{color:#333;font-weight:600;font-size:14px}.form-group input[type=text],.form-group input[type=email],.form-group textarea{padding:10px;border:1px solid #ddd;border-radius:4px;font-size:14px;font-family:inherit;resize:vertical}.form-group input[type=text]:focus,.form-group input[type=email]:focus,.form-group textarea:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.form-group input[type=file]{padding:8px;border:1px solid #ddd;border-radius:4px;cursor:pointer}.image-preview{margin-top:10px;border-radius:4px;overflow:hidden;background:#f5f5f5;max-width:300px}.image-preview img{width:100%;height:200px;object-fit:cover}.save-btn{padding:12px 24px;background-color:#667eea;color:#fff;border:none;border-radius:4px;font-size:15px;font-weight:600;cursor:pointer;transition:all .3s ease;max-width:200px}.save-btn:hover{background-color:#5568d3;transform:translateY(-2px);box-shadow:0 4px 8px #667eea4d}.add-btn{padding:12px 24px;background-color:#28a745;color:#fff;border:none;border-radius:4px;font-size:15px;font-weight:600;cursor:pointer;transition:all .3s ease;max-width:200px}.add-btn:hover{background-color:#218838;transform:translateY(-2px);box-shadow:0 4px 8px #28a7454d}.faculty-form{background:#f9f9f9;padding:20px;border-radius:8px;margin-bottom:20px}.faculty-form h4{margin:0 0 15px;color:#333;font-size:16px}.form-actions{display:flex;gap:12px;margin-top:15px}.cancel-btn{padding:12px 24px;background-color:#ccc;color:#333;border:none;border-radius:4px;font-size:15px;font-weight:600;cursor:pointer;transition:all .3s ease}.cancel-btn:hover{background-color:#bbb}.faculty-list{margin-top:25px;padding-top:25px;border-top:1px solid #e0e0e0}.faculty-list h4{margin:0 0 15px;color:#333;font-size:16px}.faculty-item{display:grid;grid-template-columns:80px 1fr auto;gap:15px;align-items:start;padding:15px;border:1px solid #e0e0e0;border-radius:4px;margin-bottom:12px;background:#f9f9f9}.faculty-thumbnail{width:80px;height:80px;object-fit:cover;border-radius:4px;background:#e0e0e0}.faculty-details h5{margin:0 0 5px;color:#333;font-size:16px}.faculty-details .designation{margin:0 0 8px;color:#667eea;font-weight:600;font-size:13px}.faculty-details .description{margin:0;color:#666;font-size:13px;line-height:1.5}.faculty-actions{display:flex;gap:8px}.edit-btn,.delete-btn{padding:8px 12px;border:none;border-radius:4px;font-size:13px;font-weight:600;cursor:pointer;transition:all .3s ease;white-space:nowrap}.edit-btn{background-color:#ffc107;color:#fff}.edit-btn:hover{background-color:#e0a800}.delete-btn{background-color:#dc3545;color:#fff}.delete-btn:hover{background-color:#c82333}.loading{display:flex;justify-content:center;align-items:center;min-height:200px;font-size:16px;color:#666}@media (max-width: 768px){.tabs{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.tab-btn{width:100%}.faculty-item{grid-template-columns:80px 1fr}.faculty-actions{grid-column:1 / -1;margin-top:10px}.form-actions{flex-direction:column}.save-btn,.add-btn,.cancel-btn{max-width:100%}}.admin-home-page-images{padding:30px;max-width:1200px;margin:0 auto}.admin-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;border-bottom:2px solid #e5e7eb;padding-bottom:20px}.admin-header h2{margin:0;color:#1a1a2e;font-size:28px}.add-btn{background:linear-gradient(135deg,#06b6d4 0%,#0891b2 100%);color:#fff;border:none;padding:12px 24px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease}.add-btn:hover{transform:translateY(-2px);box-shadow:0 8px 16px #06b6d44d}.form-section{background:#f9fafb;border:1px solid #e5e7eb;border-radius:12px;padding:30px;margin-bottom:30px}.image-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px}.form-group label{font-weight:600;margin-bottom:8px;color:#1a1a2e;font-size:14px}.form-input,.form-textarea,.file-input{padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;font-family:inherit;transition:all .3s ease}.form-input:focus,.form-textarea:focus,.file-input:focus{outline:none;border-color:#06b6d4;box-shadow:0 0 0 3px #06b6d41a}.file-input{padding:12px}.image-preview{max-height:200px;width:100%;object-fit:contain;margin-top:12px;border-radius:6px;border:1px solid #e5e7eb}.form-textarea{resize:vertical;min-height:100px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.form-group input[type=checkbox]{width:18px;height:18px;margin-right:8px;cursor:pointer}.form-group label:has(input[type=checkbox]){display:flex;align-items:center;margin:0}.form-actions{display:flex;gap:12px;grid-column:1 / -1}.btn-submit,.btn-cancel{flex:1;padding:12px 20px;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-submit{background:linear-gradient(135deg,#06b6d4 0%,#0891b2 100%);color:#fff}.btn-submit:hover{transform:translateY(-2px);box-shadow:0 8px 16px #06b6d44d}.btn-cancel{background:#e5e7eb;color:#374151}.btn-cancel:hover{background:#d1d5db}.images-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:25px}.image-card{background:white;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden;transition:all .3s ease;box-shadow:0 4px 12px #00000014}.image-card:hover{transform:translateY(-8px);box-shadow:0 12px 24px #0000001f}.image-card.inactive{opacity:.6;border-style:dashed}.image-container{position:relative;width:100%;height:200px;overflow:hidden;background:#f3f4f6}.image-container img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.image-card:hover .image-container img{transform:scale(1.05)}.inactive-badge{position:absolute;top:10px;right:10px;background:rgba(0,0,0,.7);color:#fff;padding:6px 12px;border-radius:4px;font-size:12px;font-weight:600}.image-details{padding:16px}.image-details h4{margin:0 0 8px;color:#1a1a2e;font-size:16px;font-weight:700}.description{margin:0 0 10px;color:#666;font-size:13px;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.order{margin:0 0 12px;color:#999;font-size:12px}.actions{display:flex;gap:8px;flex-wrap:wrap}.btn-toggle,.btn-edit,.btn-delete{flex:1;padding:8px 10px;border:none;border-radius:4px;font-size:12px;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-toggle{background:#fbbf24;color:#78350f}.btn-toggle:hover{background:#f59e0b;transform:translateY(-1px)}.btn-edit{background:#3b82f6;color:#fff}.btn-edit:hover{background:#2563eb;transform:translateY(-1px)}.btn-delete{background:#ef4444;color:#fff}.btn-delete:hover{background:#dc2626;transform:translateY(-1px)}.no-data{text-align:center;padding:60px 20px;color:#999;font-size:16px}.admin-loading{text-align:center;padding:60px 20px;color:#999;font-size:18px}@media (max-width: 768px){.admin-header{flex-direction:column;align-items:flex-start;gap:15px}.form-section{padding:20px}.image-form,.form-row,.images-grid{grid-template-columns:1fr}.actions{justify-content:space-between}.btn-toggle,.btn-edit,.btn-delete{flex:1}}.admin-department-logo{padding:30px;max-width:900px;margin:0 auto}.logo-section{background:white;border-radius:12px;padding:30px;box-shadow:0 4px 12px #00000014}.logo-section h2{margin:0 0 8px;color:#1a1a2e;font-size:24px;font-weight:700}.description{margin:0 0 25px;color:#666;font-size:14px}.message{padding:15px;border-radius:8px;margin-bottom:20px;font-weight:500}.message.success{background:#d1fae5;color:#065f46;border-left:4px solid #10b981}.message.error{background:#fee2e2;color:#991b1b;border-left:4px solid #ef4444}.logo-form{display:grid;gap:25px;margin-bottom:30px}.form-group label{font-weight:600;margin-bottom:10px;color:#1a1a2e;font-size:14px}.file-input,.form-input{padding:12px 14px;border:2px solid #e5e7eb;border-radius:6px;font-size:14px;font-family:inherit;transition:all .3s ease;cursor:pointer}.file-input:focus,.form-input:focus{outline:none;border-color:#06b6d4;box-shadow:0 0 0 3px #06b6d41a}.hint{margin-top:6px;color:#999;font-size:12px;display:block}.logo-preview-container{display:flex;align-items:flex-start;gap:20px;padding:20px;background:#f9fafb;border-radius:8px}.logo-preview-box{flex-shrink:0;width:120px;height:120px;border:2px solid #e5e7eb;border-radius:8px;padding:8px;background:white;display:flex;align-items:center;justify-content:center}.logo-preview{max-width:100%;max-height:100%;object-fit:contain}.btn-remove-logo{padding:10px 16px;background:#ef4444;color:#fff;border:none;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;transition:all .3s ease;align-self:center}.btn-remove-logo:hover{background:#dc2626;transform:translateY(-2px)}.form-actions{display:flex;gap:12px}.btn-save{flex:1;padding:14px 24px;background:linear-gradient(135deg,#06b6d4 0%,#0891b2 100%);color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-save:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 16px #06b6d44d}.btn-save:disabled{opacity:.7;cursor:not-allowed}.preview-section{margin-top:40px;padding-top:30px;border-top:1px solid #e5e7eb}.preview-section h3{margin:0 0 15px;color:#1a1a2e;font-size:16px;font-weight:600}.header-preview{background:linear-gradient(135deg,#06b6d4 0%,#0891b2 50%,#0284c7 100%);color:#fff;padding:20px 30px;display:flex;justify-content:space-between;align-items:center;gap:20px;border-radius:8px;box-shadow:0 4px 12px #06b6d433}.preview-logo{height:60px;width:60px;border-radius:6px;padding:4px;background:rgba(255,255,255,.1);object-fit:contain}.header-preview h1{flex:1;margin:0;font-size:20px;font-weight:700}.preview-login{background-color:#fff;color:#06b6d4;border:none;padding:10px 24px;border-radius:6px;font-size:12px;font-weight:700;cursor:default}@media (max-width: 768px){.admin-department-logo{padding:15px}.logo-section{padding:20px}.logo-preview-container{flex-direction:column;align-items:center}.header-preview{flex-direction:column;text-align:center}.header-preview h1{font-size:18px}}.admin-notice{padding:20px;background:#f5f7fa;border-radius:8px}@media (max-width: 768px){.admin-notice{padding:15px}}@media (max-width: 480px){.admin-notice{padding:10px}}.admin-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;padding-bottom:20px;border-bottom:2px solid #e0e7ff;flex-wrap:wrap;gap:15px}.admin-header h2{font-size:24px;color:#1e293b;margin:0;flex:1;min-width:200px}@media (max-width: 768px){.admin-header{margin-bottom:20px;padding-bottom:15px}.admin-header h2{font-size:20px}}@media (max-width: 480px){.admin-header{flex-direction:column;align-items:flex-start;margin-bottom:15px;padding-bottom:10px}.admin-header h2{font-size:18px;width:100%}}.add-btn{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;border:none;padding:10px 20px;border-radius:6px;cursor:pointer;font-size:14px;font-weight:600;transition:all .3s ease}@media (max-width: 768px){.add-btn{padding:8px 16px;font-size:13px}}@media (max-width: 480px){.add-btn{padding:8px 12px;font-size:12px;width:100%}}.add-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.message{padding:12px 16px;border-radius:6px;margin-bottom:20px;font-weight:500}.message.success{background:#d4edda;color:#155724;border:1px solid #c3e6cb}.message.error{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.form-container{background:white;padding:25px;border-radius:8px;margin-bottom:30px;box-shadow:0 2px 8px #0000001a}@media (max-width: 768px){.form-container{padding:15px;margin-bottom:20px}}@media (max-width: 480px){.form-container{padding:12px;margin-bottom:15px;border-radius:6px}}.notice-form{display:flex;flex-direction:column;gap:20px}.form-group{display:flex;flex-direction:column}.form-group label{font-weight:600;color:#1e293b;margin-bottom:8px;font-size:14px}@media (max-width: 480px){.form-group label{font-size:13px;margin-bottom:6px}}.form-input,.file-input{padding:10px 12px;border:1px solid #cbd5e1;border-radius:6px;font-size:14px;font-family:inherit;transition:all .3s ease}@media (max-width: 480px){.form-input,.file-input{padding:9px 10px;font-size:13px}}.form-input:focus,.file-input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.file-info{color:#059669;font-size:13px;margin-top:8px;display:flex;align-items:center;gap:6px}.form-group small{color:#64748b;font-size:13px;margin-top:4px}.form-actions{display:flex;gap:12px;justify-content:flex-end}@media (max-width: 480px){.form-actions{flex-direction:column;gap:10px}}@media (max-width: 480px){.btn-save,.btn-cancel{padding:10px 16px;font-size:13px;width:100%}}.btn-save,.btn-cancel{padding:10px 20px;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-save{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff}.btn-save:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.btn-save:disabled{opacity:.6;cursor:not-allowed}.btn-cancel{background:#e2e8f0;color:#475569}.btn-cancel:hover{background:#cbd5e1}.notices-list{background:white;padding:25px;border-radius:8px;box-shadow:0 2px 8px #0000001a;overflow-x:auto}@media (max-width: 768px){.notices-list{padding:15px}}@media (max-width: 480px){.notices-list{padding:10px}}.notices-list h3{color:#1e293b;margin-bottom:20px;font-size:18px}@media (max-width: 480px){.notices-list h3{font-size:16px;margin-bottom:15px}}.no-data{text-align:center;color:#64748b;padding:40px 20px}.notices-table{width:100%;border-collapse:collapse;min-width:600px}.notices-table thead tr{background:#667eea}.notices-table th{padding:12px 25px;text-align:left;font-weight:600;color:#fff;font-size:13px;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}@media (max-width: 768px){.notices-table th{padding:10px 15px;font-size:12px}}@media (max-width: 480px){.notices-table th{padding:8px 10px;font-size:11px}}.notices-table td{padding:12px;border-bottom:1px solid #e2e8f0;color:#364152;font-size:14px}@media (max-width: 768px){.notices-table td{padding:10px;font-size:13px}}@media (max-width: 480px){.notices-table td{padding:8px;font-size:12px}}.notices-table tbody tr:hover{background:#f8fafc}.title-cell{font-weight:500;max-width:500px;word-break:break-word}@media (max-width: 768px){.title-cell{max-width:300px}}@media (max-width: 480px){.title-cell{max-width:150px}}.date-cell{color:#64748b;font-size:13px}.tag{display:inline-block;background:#dbeafe;color:#0c4a6e;padding:4px 10px;border-radius:12px;font-size:12px;font-weight:600}.no-tag{color:#cbd5e1}.actions-cell{display:flex;gap:8px;white-space:nowrap}@media (max-width: 480px){.actions-cell{gap:6px}}.btn-download{border:none;font-size:12px;cursor:pointer;padding:4px 8px;border-radius:4px;transition:all .3s ease;background:hsl(126,97%,43%);color:#fff}@media (max-width: 480px){.btn-download{font-size:11px;padding:3px 16px!important}}.btn-delete{border:none;font-size:12px;width:100px!important;cursor:pointer;border-radius:4px;transition:all .3s ease}.btn-download:hover{transform:scale(1.1)}.btn-download:disabled{opacity:.6;cursor:not-allowed}.btn-delete:hover{transform:scale(1.1)}.filter-wrapper{width:100%}.filter-section{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;min-width:800px}@media (min-width: 768px){.filter-section{grid-template-columns:1fr 1fr 1fr}.btn-clear-filters{grid-column:1 / -1;width:fit-content;justify-self:flex-end}}@media (min-width: 1200px){.filter-section{grid-template-columns:1.5fr 1.2fr 1fr 1fr auto}.btn-clear-filters{grid-column:auto;justify-self:auto}}.filter-group{display:flex;flex-direction:column}.filter-group label{font-weight:600;color:#1e293b;margin-bottom:6px;font-size:13px}@media (max-width: 480px){.filter-group label{font-size:12px;margin-bottom:4px}}.filter-input{padding:8px 12px;border:1px solid #cbd5e1;border-radius:6px;font-size:14px;font-family:inherit;transition:all .3s ease}@media (max-width: 480px){.filter-input{padding:7px 10px;font-size:13px}}.filter-input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.btn-clear-filters{background:#e2e8f0;color:#475569;border:none;padding:8px 16px!important;border-radius:6px;cursor:pointer;font-size:13px;font-weight:600;transition:all .3s ease}.btn-clear-filters:hover:not(:disabled){background:#cbd5e1;transform:translateY(-1px)}.btn-clear-filters:disabled{opacity:.5;cursor:not-allowed}.admin-loading{text-align:center;padding:40px;color:#64748b;font-size:16px}.admin-teacher-details{max-width:1400px;margin:0 auto;padding:20px}.header-teacher{text-align:center;margin-bottom:30px;padding:30px;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-radius:12px;color:#fff}.header-teacher h2{font-size:2em;margin:0 0 10px;font-weight:700}.header-teacher p{margin:0;opacity:.95;font-size:1.05em}.controls{display:flex;gap:15px;margin-bottom:30px;flex-wrap:wrap;align-items:center}.search-box{flex:1;min-width:250px}.search-input{width:100%;padding:12px 16px;border:2px solid #ddd;border-radius:8px;font-size:1em;transition:all .3s ease}.search-input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 4px #667eea1a}.btn{padding:12px 24px;border:none;border-radius:8px;cursor:pointer;font-weight:600;transition:all .3s ease;font-size:.95em}.btn-export{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;box-shadow:0 4px 12px #667eea4d}.btn-export:hover{transform:translateY(-2px);box-shadow:0 6px 20px #667eea66}.btn-primary{background:#667eea;color:#fff}.btn-primary:hover{background:#764ba2;transform:translateY(-2px)}.btn-secondary{background:#ddd;color:#333}.btn-secondary:hover{background:#ccc}.btn-view{background:#667eea;color:#fff;padding:10px 16px;font-size:.9em;width:calc(100% - 40px);margin:0 20px 20px}.btn-view:hover{background:#764ba2}.btn-back{background:#667eea;color:#fff;padding:10px 16px;border:none;border-radius:6px;cursor:pointer;margin-bottom:20px;transition:all .3s ease}.btn-back:hover{background:#764ba2;transform:translate(-4px)}.resume-section{display:flex;align-items:center;gap:15px}.btn-download-resume{background:linear-gradient(135deg,#2ecc71 0%,#27ae60 100%);color:#fff;margin-top:20px;padding:12px 24px;border:none;border-radius:8px;cursor:pointer;font-weight:600;font-size:.95em;transition:all .3s ease;box-shadow:0 4px 12px #2ecc714d;white-space:nowrap}.btn-download-resume:hover{transform:translateY(-2px);box-shadow:0 6px 20px #2ecc7166}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.modal-content{background:white;border-radius:12px;max-width:600px;width:100%;max-height:80vh;overflow-y:auto;box-shadow:0 10px 40px #0000004d}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:2px solid #f0f0f0}.modal-header h3{margin:0;font-size:1.5em;color:#333}.close-btn{background:none;border:none;font-size:1.5em;cursor:pointer;color:#999}.close-btn:hover{color:#333}.field-selection{padding:20px}.field-group{margin-bottom:20px}.group-header{display:flex;align-items:center;gap:10px;margin-bottom:10px;padding:10px;background:#f8f9fa;border-radius:6px;cursor:pointer}.group-header:hover{background:#f0f2ff}.group-label{font-weight:600;color:#333;cursor:pointer;flex:1}.group-checkbox{width:18px;height:18px;cursor:pointer}.field-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px;margin-left:20px}.field-item{display:flex;align-items:center;gap:8px;cursor:pointer;padding:8px;border-radius:4px;transition:background .2s}.field-item:hover{background:#f0f2ff}.field-checkbox{width:16px;height:16px;cursor:pointer}.field-item span{color:#555;font-size:.9em}.modal-footer{display:flex;gap:10px;justify-content:flex-end;padding:20px;border-top:2px solid #f0f0f0}.list-view{min-height:400px}.teachers-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px}.teacher-card{background:white;border-radius:12px;overflow:hidden;box-shadow:0 4px 12px #0000001a;transition:all .3s ease;border-left:4px solid #667eea;display:flex;flex-direction:column}.card-picture{width:100%;height:200px;overflow:hidden;background:#f0f0f0;display:flex;align-items:center;justify-content:center}.card-image{width:100%;height:100%;object-fit:contain;padding:8px;background-color:#fff}.teacher-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #00000026}.card-header{display:flex;justify-content:space-between;align-items:start;margin-bottom:15px;padding:15px 20px 0}.card-header h4{margin:0;font-size:1.2em;color:#333;flex:1}.dept{background:#667eea;color:#fff;padding:4px 12px;border-radius:20px;font-size:.8em;font-weight:600}.card-body{margin-bottom:15px;padding:0 20px}.card-body p{margin:8px 0;color:#666;font-size:.9em}.card-body .email{color:#667eea;font-weight:500}.card-body .id{font-size:.85em;color:#999}.details-view{animation:slideIn .3s ease}@keyframes slideIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.teacher-details-card{background:white;border-radius:12px;overflow:hidden;box-shadow:0 5px 20px #0000001a}.details-header-section{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);padding:40px;color:#fff}.teacher-basic-info{display:flex;gap:30px;align-items:center}.teacher-avatar{width:150px;height:150px;border-radius:12px;object-fit:cover;border:4px solid white;box-shadow:0 4px 12px #0003}.info-text h3{font-size:1.8em;margin:0 0 10px}.info-text .email{font-size:1.05em;margin:0 0 5px;opacity:.95}.info-text .ids{font-size:.95em;opacity:.9;margin:0}.info-text .ids span{margin-right:10px}.details-sections{padding:40px;display:grid;grid-template-columns:repeat(auto-fit,minmax(500px,1fr));gap:30px}.detail-section{padding:20px;background:#f8f9fa;border-radius:8px;border-left:4px solid #667eea}.detail-section h4{font-size:1.2em;color:#333;margin:0 0 15px;padding-bottom:10px;border-bottom:2px solid #667eea}.detail-section p{color:#666;line-height:1.6;margin:0}.item-card{background:white;padding:15px;border-radius:6px;margin-bottom:12px;border-left:3px solid #667eea}.item-header{display:flex;justify-content:space-between;align-items:start;gap:15px;margin-bottom:8px}.item-header h5{margin:0;color:#333;font-weight:600;flex:1}.year{background:#667eea;color:#fff;padding:4px 10px;border-radius:4px;font-size:.85em;font-weight:600;white-space:nowrap}.item-detail{color:#666;font-size:.95em;margin:5px 0 0}.item-description{color:#555;font-size:.9em;margin-top:8px;line-height:1.5;font-style:italic}.alert{padding:15px 20px;border-radius:8px;margin-bottom:20px;font-weight:500}.alert-error{background:#ffe5e5;color:#c92a2a;border-left:4px solid #c92a2a}.alert-success{background:#e6f7e6;color:#2b8a2b;border-left:4px solid #2b8a2b}.loading,.no-data{text-align:center;padding:60px 20px;color:#999;font-size:1.1em}@media (max-width: 768px){.controls{flex-direction:column}.search-box{min-width:auto}.header-teacher{padding:20px}.header-teacher h2{font-size:1.5em}.teachers-grid{grid-template-columns:1fr}.details-sections{grid-template-columns:1fr;padding:20px}.teacher-basic-info{flex-direction:column;text-align:center}.teacher-avatar{width:120px;height:120px}.field-list{grid-template-columns:1fr}}@media (max-width: 480px){.teacher-card{padding:15px}.item-header{flex-direction:column}.year{align-self:flex-start}.modal-content{max-width:calc(100% - 20px)}}.admin-routine-container{padding:24px;background:#f5f5f5;border-radius:8px;margin-bottom:20px}.admin-routine-container h2{color:#333;margin-bottom:20px;font-size:24px;font-weight:600}.message{padding:12px 16px;border-radius:4px;margin-bottom:20px;font-weight:500}.message.success{background-color:#d4edda;color:#155724;border:1px solid #c3e6cb}.message.error{background-color:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.routine-form{background:white;padding:20px;border-radius:8px;margin-bottom:30px;box-shadow:0 1px 3px #0000001a}.form-group{margin-bottom:16px}.form-group label{display:block;margin-bottom:8px;font-weight:500;color:#333}.form-group input[type=file],.form-group input[type=text],.form-group select,.form-group textarea{width:100%;padding:10px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px;font-family:inherit;box-sizing:border-box}.form-group input[type=file]:disabled,.form-group input[type=text]:disabled,.form-group select:disabled,.form-group textarea:disabled{background-color:#f5f5f5;cursor:not-allowed}.form-group textarea{resize:vertical;min-height:80px}.file-name{margin-top:8px;font-size:12px;color:#666;font-style:italic}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}@media (max-width: 768px){.form-row{grid-template-columns:1fr}}.btn-upload{background-color:#007bff;color:#fff;padding:12px 32px;border:none;border-radius:4px;font-size:14px;font-weight:600;cursor:pointer;transition:background-color .3s}.btn-upload:hover:not(:disabled){background-color:#0056b3}.btn-upload:disabled{background-color:#6c757d;cursor:not-allowed}.routines-section{background:white;padding:20px;border-radius:8px;box-shadow:0 1px 3px #0000001a}.routines-section h3{color:#333;margin-bottom:16px;font-size:18px;font-weight:600}.no-data{text-align:center;color:#999;padding:40px 20px;font-style:italic}.routines-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}@media (max-width: 768px){.routines-grid{grid-template-columns:1fr}}.routine-card{background:#f9f9f9;border:1px solid #e0e0e0;border-radius:6px;padding:16px;transition:box-shadow .3s,transform .2s}.routine-card:hover{box-shadow:0 2px 8px #0000001a;transform:translateY(-2px)}.routine-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px}.routine-header h4{margin:0;color:#333;font-size:14px;font-weight:600;word-break:break-word;flex:1}.semester-badge{background-color:#e7f3ff;color:#0056b3;padding:4px 12px;border-radius:20px;font-size:12px;font-weight:600;white-space:nowrap}.routine-meta{font-size:12px;color:#666;margin:6px 0;line-height:1.4}.routine-meta strong{color:#333}.routine-description{font-size:13px;color:#555;margin:8px 0;line-height:1.4}.routine-actions{display:flex;gap:8px;margin-top:12px}.btn-action{flex:1;padding:8px 12px;border:none;border-radius:4px;font-size:12px;font-weight:600;cursor:pointer;transition:background-color .3s}.btn-view{background-color:#17a2b8;color:#fff}.btn-view:hover{background-color:#138496}.btn-download{background-color:#28a745;color:#fff}.btn-download:hover{background-color:#218838}.btn-delete{background-color:#dc3545;color:#fff}.btn-delete:hover{background-color:#c82333}.upload-type-tabs{display:flex;gap:10px;margin-bottom:20px;border-bottom:2px solid #e0e0e0}.tab-btn{padding:12px 20px;background:transparent;border:none;cursor:pointer;font-size:14px;font-weight:500;color:#666;border-bottom:3px solid transparent;transition:all .3s ease;margin-bottom:-2px}.tab-btn:hover{color:#333;background-color:#f9f9f9}.tab-btn.active{color:#007bff;border-bottom-color:#007bff}.tab-btn:disabled{opacity:.6;cursor:not-allowed}.excel-form{background:#f8f9fa}.excel-info{background:#e7f3ff;border:1px solid #b3d9ff;border-radius:6px;padding:16px;margin-bottom:20px;color:#036}.excel-info h4{margin:0 0 10px;color:#036;font-size:14px;font-weight:600}.excel-info p{margin:8px 0;font-size:13px}.excel-info ul{margin:10px 0;padding-left:20px;list-style-type:none}.excel-info ul li{margin:6px 0;font-size:13px;list-style:disc;list-style-position:inside}.excel-info .note{background:#fff3cd;border:1px solid #ffc107;padding:8px;border-radius:4px;margin-top:10px;color:#856404}.file-input-wrapper{display:flex;gap:10px;align-items:center}.file-input-wrapper input[type=file]{flex:1;padding:10px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px}.btn-download-template{padding:10px 16px;background-color:#28a745;color:#fff;border:none;border-radius:4px;font-size:13px;font-weight:600;cursor:pointer;white-space:nowrap;transition:background-color .3s}.btn-download-template:hover:not(:disabled){background-color:#218838}.btn-download-template:disabled{background-color:#6c757d;cursor:not-allowed;opacity:.7}.excel-tips{background:#fff9e6;border:1px solid #ffe680;border-radius:6px;padding:12px;margin-top:12px;color:#664d00}.excel-tips h5{margin:0 0 8px;color:#664d00;font-size:13px;font-weight:600}.excel-tips ul{margin:0;padding-left:20px;list-style-type:none}.excel-tips ul li{margin:4px 0;font-size:12px;list-style:disc;list-style-position:inside}.excel-tips ul li strong{color:#333}.admin-documents-container{padding:20px;background-color:#f8f9fa;border-radius:8px;min-height:600px;width:100%;overflow:auto}.admin-documents-container h2{color:#333;margin-bottom:25px;font-weight:600;font-size:1.5rem}.filter-section{padding:20px;margin-bottom:25px}.filter-type-selector{display:flex;gap:10px;margin-bottom:20px}.type-btn{padding:10px 20px;border:2px solid #ddd;background-color:#fff;border-radius:4px;cursor:pointer;font-weight:500;transition:all .3s;font-size:.95rem}.type-btn:hover{border-color:#4caf50;color:#4caf50}.type-btn.active{background-color:#4caf50;color:#fff;border-color:#4caf50}.filter-group{display:flex;flex-direction:column;gap:8px;margin-bottom:15px}.filter-group label{font-weight:600;color:#555;font-size:.95rem}.filter-group.flex-1{flex:1}.filter-select,.filter-input{padding:10px 12px;border:1px solid #ddd;border-radius:4px;font-size:.95rem;font-family:inherit;transition:border-color .3s,box-shadow .3s}.filter-select:focus,.filter-input:focus{outline:none;border-color:#4caf50;box-shadow:0 0 6px #4caf5033}.filter-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}.alert{padding:12px 15px;margin-bottom:15px;border-radius:4px;border-left:4px solid}.alert-danger{background-color:#f8d7da;color:#721c24;border-left-color:#f5c6cb}.alert-success{background-color:#d4edda;color:#155724;border-left-color:#c3e6cb}.results-summary{background-color:#f0f7ff;padding:15px 20px;border-radius:6px;margin-bottom:20px;border-left:4px solid #4CAF50}.results-summary h3{margin:0 0 8px;color:#333;font-size:1.1rem}.user-name{color:#4caf50;font-weight:600}.result-count{margin:0;color:#666;font-size:.9rem}.documents-table-container{background-color:#fff;border-radius:8px;overflow:hidden;border:1px solid #e0e0e0;box-shadow:0 2px 4px #0000000d}.documents-table{width:100%;border-collapse:collapse}.documents-table thead{background-color:#f5f5f5;border-bottom:2px solid #e0e0e0}.documents-table th{padding:14px;text-align:left;font-weight:600;color:#fff;font-size:.95rem;text-transform:uppercase;letter-spacing:.5px}.documents-table tbody tr{border-bottom:1px solid #f0f0f0;transition:background-color .2s}.documents-table tbody tr:hover{background-color:#f9f9f9}.documents-table td{padding:14px;color:#333;font-size:.95rem}.doc-name-col{max-width:300px}.doc-name{display:flex;flex-direction:column;gap:4px}.name-title{font-weight:500;color:#333;word-break:break-word}.name-desc{font-size:.85rem;color:#999;display:-webkit-box;-webkit-line-clamp:1;line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}.center{text-align:center}.actions-col{display:flex;gap:8px;flex-wrap:wrap}.category-badge{display:inline-block;padding:4px 10px;border-radius:20px;font-size:.75rem;font-weight:600;text-transform:uppercase;white-space:nowrap}.category-academic{background-color:#e3f2fd;color:#1976d2}.category-admission{background-color:#f3e5f5;color:#7b1fa2}.category-certificate{background-color:#e8f5e9;color:#388e3c}.category-result{background-color:#fff3e0;color:#f57c00}.category-identity{background-color:#fce4ec;color:#c2185b}.category-other{background-color:#f5f5f5;color:#666}.btn{padding:6px 12px;border:none;border-radius:4px;cursor:pointer;font-size:.85rem;font-weight:500;transition:all .3s}.btn-sm{padding:5px 10px;font-size:.8rem}.btn-download{background-color:#4caf50;color:#fff}.btn-download:hover{background-color:#45a049;box-shadow:0 2px 6px #4caf504d}.btn-delete{background-color:#f44336;color:#fff}.btn-delete:hover{background-color:#da190b;box-shadow:0 2px 6px #f443364d}.pagination{display:flex;justify-content:center;align-items:center;gap:15px;padding:15px;background-color:#f9f9f9;border-top:1px solid #e0e0e0}.pagination button{padding:8px 15px;border:1px solid #ddd;background-color:#fff;border-radius:4px;cursor:pointer;font-size:.9rem;font-weight:500;transition:all .3s}.pagination button:hover:not(:disabled){background-color:#4caf50;color:#fff;border-color:#4caf50}.pagination button:disabled{opacity:.5;cursor:not-allowed}.page-info{color:#666;font-weight:500}.no-documents,.no-selection{text-align:center;padding:60px 20px;color:#999;background-color:#fff;border-radius:8px;border:1px solid #e0e0e0}.no-documents p,.no-selection p{font-size:1rem;margin:0;font-style:italic}.no-selection p{font-size:1.1rem;color:#666}@media (max-width: 1024px){.filter-row{grid-template-columns:1fr}.documents-table{font-size:.9rem}.documents-table th,.documents-table td{padding:10px}}@media (max-width: 768px){.filter-section{padding:15px}.filter-type-selector{flex-wrap:wrap}.type-btn{flex:1;min-width:120px}.documents-table-container{overflow-x:auto}.documents-table{min-width:800px}.actions-col{flex-direction:column}.btn{width:100%}.pagination{flex-wrap:wrap}}@media (max-width: 480px){.admin-documents-container{padding:10px}.filter-section{padding:12px}.filter-group{margin-bottom:12px}.filter-input,.filter-select{padding:8px 10px;font-size:.9rem}.type-btn{padding:8px 12px;font-size:.85rem}}.admin-power-container{padding:20px;max-width:1200px;margin:0 auto}.admin-power-container h2{color:#333;margin-bottom:20px;font-size:28px;border-bottom:3px solid #007bff;padding-bottom:10px}.tab-navigation{display:flex;gap:10px;margin-bottom:30px;flex-wrap:wrap}.tab-btn{padding:12px 20px;border:2px solid #ddd;background:white;cursor:pointer;border-radius:6px;font-size:14px;font-weight:500;transition:all .3s ease}.tab-btn:hover{border-color:#007bff;color:#007bff}.tab-btn.active{background:#007bff;color:#fff;border-color:#007bff}.tab-content{animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.section{background:white;padding:20px;border-radius:8px;margin-bottom:20px;box-shadow:0 2px 4px #0000001a}.section h3{color:#333;margin-top:0;margin-bottom:15px;font-size:18px;border-left:4px solid #007bff;padding-left:10px}.search-input{width:100%;padding:12px;border:1px solid #ddd;border-radius:6px;font-size:14px;margin-bottom:15px}.search-input:focus{outline:none;border-color:#007bff;box-shadow:0 0 5px #007bff4d}.hod-list,.teacher-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:15px}.hod-card,.teacher-item{border:1px solid #e9ecef;border-radius:8px;padding:15px;background:#f8f9fa;transition:all .3s ease}.hod-card:hover,.teacher-item:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.teacher-item.selectable{cursor:pointer}.teacher-item.selected{background:#e7f3ff;border:2px solid #007bff}.teacher-item.selected .selected-badge{display:inline-block;background:#28a745;color:#fff;padding:4px 8px;border-radius:4px;font-size:12px;font-weight:700}.hod-info,.teacher-info{margin-bottom:12px}.hod-info h4,.teacher-info h4{margin:0 0 5px;color:#333;font-size:16px}.hod-info p,.teacher-info p{margin:5px 0;color:#666;font-size:14px}.department{color:#999;font-size:12px!important}.no-data{color:#999;font-style:italic;padding:20px;text-align:center;background:#f8f9fa;border-radius:6px}.btn-primary,.btn-success,.btn-danger,.btn-warning,.btn-danger-large{padding:10px 16px;border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:all .3s ease}.btn-primary{background:#007bff;color:#fff;width:100%;margin-top:15px}.btn-primary:hover:not(:disabled){background:#0056b3}.btn-success{background:#28a745;color:#fff}.btn-success:hover:not(:disabled){background:#218838}.btn-danger{background:#dc3545;color:#fff}.btn-info{padding:10px 16px;color:#fff;background-color:#218838;border:none;border-radius:4px}.btn-danger:hover:not(:disabled){background:#c82333}.btn-warning{background:#ffc107;color:#333}.btn-warning:hover:not(:disabled){background:#e0a800}.btn-danger-large{background:#dc3545;color:#fff;padding:12px 24px;width:100%}.btn-danger-large:hover:not(:disabled){background:#c82333}button:disabled{opacity:.6;cursor:not-allowed}.powers-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:15px;margin-bottom:20px;padding:15px;background:#f8f9fa;border-radius:6px}.power-checkbox{display:flex;align-items:center;gap:10px;cursor:pointer;padding:10px;border-radius:6px;transition:background .2s}.power-checkbox:hover{background:white}.power-checkbox input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:#007bff}.power-checkbox span{color:#333;font-size:14px;font-weight:500}.role-selector{margin-bottom:20px;display:flex;align-items:center;gap:10px}.role-selector select{padding:8px 12px;border:1px solid #ddd;border-radius:6px;font-size:14px}.color-settings{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-bottom:20px}.color-setting-group{background:#f8f9fa;padding:15px;border-radius:8px;border-left:4px solid #007bff}.color-setting-group label{display:block;margin-bottom:8px;font-weight:500;color:#333}.color-setting-group input[type=number],.color-setting-group input[type=color]{width:100%;padding:8px;border:1px solid #ddd;border-radius:6px;margin-bottom:8px}.color-setting-group input[type=color]{height:40px;cursor:pointer}.color-preview{width:100%;height:40px;border-radius:6px;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;text-shadow:1px 1px 2px rgba(0,0,0,.3);margin-bottom:10px}.color-setting-group p{margin:10px 0 0;font-size:12px;color:#666;font-style:italic}.warning{background:#fff3cd;border-left:4px solid #ffc107;padding:12px;border-radius:6px;color:#856404;margin-bottom:20px}.table-list{background:#f8f9fa;padding:15px;border-radius:6px;margin-bottom:20px}.table-list h4{margin:0 0 15px;color:#333}.table-checkbox{display:flex;align-items:center;gap:10px;margin-bottom:10px;cursor:pointer;padding:8px;border-radius:4px;transition:background .2s}.table-checkbox:hover{background:white}.table-checkbox input[type=checkbox]{width:16px;height:16px;cursor:pointer;accent-color:#007bff}.table-name{font-family:Courier New,monospace;font-size:13px;color:#333;font-weight:500}.selected-summary{background:#f0f8ff;border-left:4px solid #007bff;padding:15px;border-radius:6px}.selected-summary p{margin:0 0 10px;color:#333;font-weight:500}@media (max-width: 768px){.admin-power-container{padding:15px}.tab-navigation{flex-direction:column}.tab-btn{width:100%;text-align:left}.hod-list,.teacher-list,.color-settings,.powers-grid{grid-template-columns:1fr}}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;background-color:#f5f5f5;color:#333}html,body,#root{height:100%}.error,.success{padding:12px 16px;border-radius:4px;margin-bottom:20px;font-weight:500}.error{background-color:#fee;color:#c33;border-left:4px solid #c33}.success{background-color:#efe;color:#3c3;border-left:4px solid #3c3}button{font-family:inherit;cursor:pointer}input,select,textarea{font-family:inherit}form{display:flex;flex-direction:column;gap:15px}form input,form select,form textarea{padding:12px;border:1px solid #ddd;border-radius:4px;font-size:14px}form input:focus,form select:focus,form textarea:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 2px #667eea1a}form button{background:#667eea;color:#fff;border:none;padding:12px 24px;border-radius:4px;cursor:pointer;font-weight:600;transition:all .2s}form button:hover{background:#5568d3;transform:translateY(-1px);box-shadow:0 4px 8px #667eea33}.profile-card{background:white;padding:20px;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:20px}.profile-card p{padding:10px 0;border-bottom:1px solid #eee}.profile-card p:last-child{border-bottom:none}.profile-section{background:white;padding:20px;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:20px}.info-box{background:#f9f9f9;padding:15px;border-radius:4px;margin-top:15px;border-left:4px solid #667eea}.info-box p{padding:8px 0;font-size:14px}@media (max-width: 768px){body{font-size:14px}form{gap:12px}form input,form select,form textarea{padding:12px;font-size:16px;border-radius:6px;width:100%;box-sizing:border-box}form button{padding:12px 16px;font-size:14px;min-height:44px}.profile-card,.profile-section{padding:15px;margin-bottom:15px;border-radius:6px}.info-box{padding:12px;margin-top:12px}.info-box p{padding:6px 0;font-size:13px}.error,.success{padding:12px 14px;margin-bottom:16px;font-size:13px}p,span,div{word-wrap:break-word;overflow-wrap:break-word}}@media (max-width: 480px){form{gap:10px}form input,form select,form textarea{padding:12px;font-size:16px!important;border-radius:6px;width:100%!important;box-sizing:border-box!important}form button{padding:12px 14px;font-size:14px;width:100%;min-height:44px}.profile-card,.profile-section{padding:12px;margin-bottom:12px;border-radius:4px}.profile-card p{padding:8px 0;font-size:13px;word-wrap:break-word;overflow-wrap:break-word}.info-box{padding:10px;margin-top:10px;border-left-width:3px;word-wrap:break-word}*{word-wrap:break-word!important;overflow-wrap:break-word!important}body{overflow-x:hidden}h1,h2,h3,h4,h5,h6{word-wrap:break-word;font-size:1.2em}.container{padding:10px}a,button,.clickable{min-height:44px;display:flex;align-items:center;justify-content:center}.error,.success{padding:12px 10px;margin-bottom:12px;font-size:13px;word-wrap:break-word}}.info-box p{padding:4px 0;font-size:12px}.error,.success{padding:10px 12px;margin-bottom:12px;font-size:12px;border-left-width:3px}@media (min-width: 1025px){table{width:100%!important;border-collapse:collapse;table-layout:auto;margin:0!important;padding:0!important}table tbody tr{border-bottom:1px solid #ddd}table th{padding:14px 12px;text-align:left;font-size:14px;font-weight:700;background-color:#3a21df;white-space:nowrap}table td{padding:12px;font-size:13px;white-space:nowrap}.table-container{width:100%!important;overflow-x:visible!important;margin:0!important;padding:0!important;max-width:none!important}.table-wrapper{width:100%!important;padding:0!important;margin:0!important;max-width:none!important}.attendance-container{max-width:58%!important;margin:0 auto!important}}@media (max-width: 768px){html,body{overflow-x:hidden;width:100%}*{word-wrap:break-word;overflow-wrap:break-word}h1{font-size:1.5em}h2{font-size:1.3em}h3{font-size:1.1em}h4,h5,h6{font-size:1em}a,button,[role=button]{min-height:44px;-webkit-text-emphasis-color:transparent;text-emphasis-color:transparent}img{max-width:100%;height:auto}li{word-wrap:break-word}table,.attendance-table{width:auto!important;min-width:100%!important;border-collapse:collapse!important;table-layout:fixed!important;display:table!important;font-size:11px;box-sizing:border-box}table thead,.attendance-table thead{background-color:#3a21df;display:table-header-group;width:130vw!important}table th,.attendance-table th{padding:12px!important;text-align:center!important;font-size:10px!important;font-weight:700!important;display:table-cell!important;color:#fff!important;border:none!important;box-sizing:border-box!important;white-space:nowrap!important;vertical-align:middle!important;overflow:visible!important;line-height:1.2!important}.attendance-table th:nth-child(1),.attendance-table td:nth-child(1){width:120px!important;min-width:120px!important}.attendance-table th:nth-child(2),.attendance-table td:nth-child(2){width:120px!important;min-width:120px!important}.attendance-table th:nth-child(3),.attendance-table td:nth-child(3){width:70px!important;min-width:70px!important}.attendance-table th:nth-child(4),.attendance-table td:nth-child(4){width:70px!important;min-width:70px!important}.attendance-table th:nth-child(5),.attendance-table td:nth-child(5){width:70px!important;min-width:70px!important}.attendance-table th:nth-child(6),.attendance-table td:nth-child(6){width:80px!important;min-width:80px!important}.attendance-table th:nth-child(1),.attendance-table td:nth-child(1){text-align:left!important}.attendance-table tbody{display:table-row-group;width:100%}.attendance-table tr{display:table-row;border-bottom:1px solid #e0e0e0;width:100%}.attendance-table td{padding:12px!important;font-size:11px!important;display:table-cell!important;text-align:center!important;border:none!important;box-sizing:border-box!important;white-space:nowrap!important;overflow:visible!important;vertical-align:middle!important}.attendance-table td:nth-child(1){text-align:left!important;white-space:normal!important}.attendance-table td:nth-child(2){white-space:normal!important}.attendance-table td:nth-child(6){width:80px!important;max-width:80px!important}.footer{flex-direction:column!important;justify-content:center!important;align-items:center!important;padding:10px!important;gap:2px!important;text-align:center!important}.footer div{flex:0!important;width:100%!important;min-width:initial!important}.footer div p{margin:0!important;padding:2px 0!important;font-size:12px!important;line-height:1.3!important}.header{flex-direction:row!important;justify-content:space-between;align-items:center}.header-left{flex-shrink:0;z-index:2}.header-right{display:flex;flex-direction:column;align-items:flex-end;gap:6px;width:100%}.header-title{font-size:16px;position:static!important;transform:none!important;text-align:right}.login-btn{font-size:12px;padding:6px 12px;width:260px;border-radius:10px}.department-logo{height:60px;width:60px;padding:4px 4px 4px 10px}}@media (max-width: 480px){body{width:100vw;overflow-x:hidden}.container,.main-content,.dashboard,.admin-container,.student-container,.teacher-container{width:100%!important;max-width:100%;padding:6px!important;margin:0;overflow-x:hidden}input[type=text],input[type=email],input[type=password],input[type=number],input[type=date],input[type=search],input[type=tel],input[type=url],select,textarea{width:100%!important;max-width:100%;padding:12px!important;font-size:16px!important;box-sizing:border-box!important;border:1px solid #ddd!important;border-radius:4px!important;margin-bottom:10px}select{appearance:none!important;-webkit-appearance:none!important;-moz-appearance:none!important;background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right 8px center;background-size:20px;padding-right:30px!important}button,input[type=button],input[type=submit],input[type=reset],a.btn,.btn{padding:12px 5px!important;min-height:44px!important;font-size:14px!important;border:none;border-radius:4px;cursor:pointer;display:flex;align-items:center;justify-content:center;margin-bottom:8px;text-decoration:none}.button-group,.btn-group{display:flex;flex-direction:column;gap:8px}.button-group button,.btn-group button{width:100%}table{width:100%;border-collapse:collapse;table-layout:fixed;display:table;font-size:11px;box-sizing:border-box}table thead{background-color:#3a21df;display:table-header-group;width:100%}table th{padding:12px!important;text-align:center!important;font-size:10px!important;font-weight:700!important;display:table-cell!important;color:#fff!important;border:none!important;box-sizing:border-box!important;white-space:normal;vertical-align:middle!important;overflow:hidden!important;line-height:1.2!important}table th:nth-child(1),table td:nth-child(1){width:16%}table th:nth-child(2),table td:nth-child(2){width:18%}table th:nth-child(3),table td:nth-child(3){width:20%}table th:nth-child(4),table td:nth-child(4){width:17.75%}table th:nth-child(5),table td:nth-child(5){width:15.75%}table th:nth-child(6),table td:nth-child(6){width:15.75%}table th:nth-child(7),table td:nth-child(7){width:13.75%}table th:nth-child(8),table td:nth-child(8){width:15.75%}table th:nth-child(1){text-align:left!important}table td:nth-child(1){text-align:left!important}table tbody{display:table-row-group;width:100%}table tr{display:table-row;border-bottom:1px solid #e0e0e0;width:100%}table td{padding:12px!important;font-size:11px!important;display:table-cell!important;text-align:center!important;border:none!important;box-sizing:border-box!important;white-space:normal;overflow:hidden!important;vertical-align:middle!important}table td:nth-child(1){text-align:left;word-break:break-word}table td:nth-child(2){word-break:break-word}.global-container{width:100%!important;overflow-x:auto!important;padding:0}.routine-timetable-container{overflow-x:auto;width:100%}.routine-table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:13px}.routine-table{display:table!important;min-width:800px!important;table-layout:fixed!important;width:100%!important}.routine-table thead{display:table-header-group!important}.routine-table tbody{display:table-row-group!important}.routine-table tr{display:table-row!important}.routine-table th,.routine-table td{display:table-cell!important;white-space:normal!important;word-break:break-word!important;text-align:center!important;padding:10px!important;font-size:11px!important;width:12.5%!important}.student-table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:13px}.student-table{display:table!important;min-width:800px!important;table-layout:fixed!important;width:100%!important}.student-table th:nth-child(1),.student-table td:nth-child(1){width:3%}.student-table thead{display:table-header-group!important}.student-table tbody{display:table-row-group!important}.student-table tr{display:table-row!important}.student-table th,.student-table td{display:table-cell!important;white-space:normal!important;word-break:break-word!important;text-align:center!important;padding:10px!important;font-size:11px!important}.teacher-table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:13px}.teacher-table{display:table!important;min-width:800px!important;table-layout:fixed!important;width:100%!important}.teacher-table thead{display:table-header-group!important}.teacher-table tbody{display:table-row-group!important}.teacher-table tr{display:table-row!important}.teacher-table th,.teacher-table td{display:table-cell!important;white-space:normal!important;word-break:break-word!important;text-align:center!important;padding:10px!important;font-size:11px!important}.course-table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:13px}.course-table{display:table!important;min-width:800px!important;table-layout:fixed!important;width:100%!important}.course-table thead{display:table-header-group!important}.course-table tbody{display:table-row-group!important}.course-table tr{display:table-row!important}.course-table th,.course-table td{display:table-cell!important;white-space:normal!important;word-break:break-word!important;text-align:center!important;padding:10px!important;font-size:11px!important}.document-table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:13px}.document-table{display:table!important;min-width:800px!important;table-layout:fixed!important;width:100%!important}.document-table thead{display:table-header-group!important}.document-table tbody{display:table-row-group!important}.document-table tr{display:table-row!important}.document-table th,.document-table td{display:table-cell!important;white-space:normal!important;word-break:break-word!important;text-align:center!important;padding:10px!important;font-size:11px!important}.dt-routine-table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:13px}.dt-routine-table{display:table!important;min-width:800px!important;table-layout:fixed!important;width:100%!important}.dt-routine-table thead{display:table-header-group!important}.dt-routine-table tbody{display:table-row-group!important}.dt-routine-table tr{display:table-row!important}.dt-routine-table th,.dt-routine-table td{display:table-cell!important;white-space:normal!important;word-break:break-word!important;text-align:center!important;padding:10px!important;font-size:11px!important}.notices-table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:13px}.notices-table{display:table!important;min-width:800px!important;table-layout:fixed!important;width:100%!important}.notices-table thead{display:table-header-group!important}.notices-table tbody{display:table-row-group!important}.notices-table tr{display:table-row!important}.notices-table th,.notices-table td{display:table-cell!important;white-space:normal!important;word-break:break-word!important;text-align:center!important;padding:10px!important;font-size:11px!important}.marks-table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:13px}.marks-table{display:table!important;min-width:800px!important;table-layout:fixed!important;width:100%!important}.marks-table thead{display:table-header-group!important}.marks-table tbody{display:table-row-group!important}.marks-table tr{display:table-row!important}.marks-table th,.marks-table td{display:table-cell!important;white-space:normal;word-break:break-word!important;text-align:center!important;padding:10px!important;font-size:11px!important}.attendence-table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:13px}.attendence-table{display:table!important;min-width:800px!important;table-layout:fixed!important;width:100%!important}.attendence-table thead{display:table-header-group!important}.attendence-table tbody{display:table-row-group!important}.attendence-table tr{display:table-row!important}.attendence-table th,.attendence-table td{display:table-cell!important;white-space:normal;word-break:break-word!important;text-align:center!important;padding:10px!important;font-size:11px!important}.studyM-table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:13px}.studyM-table{display:table!important;min-width:800px!important;table-layout:fixed!important;width:100%!important}.studyM-table thead{display:table-header-group!important}.studyM-table tbody{display:table-row-group!important}.studyM-table tr{display:table-row!important}.studyM-table th,.studyM-table td{display:table-cell!important;white-space:normal;word-break:break-word!important;text-align:center!important;padding:10px!important;font-size:11px!important}.table-container1{width:100%;overflow-x:auto}.markAttendence-table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:13px}.markAttendence-table{display:table!important;min-width:380px!important;table-layout:fixed!important;width:100%!important}.markAttendence-table thead{display:table-header-group!important}.markAttendence-table tbody{display:table-row-group!important}.markAttendence-table tr{display:table-row!important}.markAttendence-table th,.markAttendence-table td{display:table-cell!important;white-space:normal;word-break:break-word!important;text-align:center!important;padding:10px!important;font-size:11px!important}.project-table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:13px}.project-table{display:table!important;min-width:580px!important;table-layout:fixed!important;width:100%!important}.project-table thead{display:table-header-group!important}.project-table tbody{display:table-row-group!important}.project-table tr{display:table-row!important}.project-table th,.project-table td{display:table-cell!important;white-space:normal;word-break:break-word!important;text-align:center!important;padding:10px!important;font-size:11px!important}.almirah-table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:13px}.almirah-table{display:table!important;min-width:580px!important;table-layout:fixed!important;width:100%!important}.almirah-table thead{display:table-header-group!important}.almirah-table tbody{display:table-row-group!important}.almirah-table tr{display:table-row!important}.almirah-table th,.almirah-table td{display:table-cell!important;white-space:normal;word-break:break-word!important;text-align:center!important;padding:10px!important;font-size:11px!important}.alumni-table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:13px}.alumni-table{display:table!important;min-width:580px!important;table-layout:fixed!important;width:100%!important}.alumni-table thead{display:table-header-group!important}.alumni-table tbody{display:table-row-group!important}.alumni-table tr{display:table-row!important}.alumni-table th,.alumni-table td{display:table-cell!important;white-space:normal;word-break:break-word!important;text-align:center!important;padding:10px!important;font-size:11px!important}.footer{flex-direction:column!important;justify-content:center!important;align-items:center!important;padding:10px!important;gap:2px!important;text-align:center!important}.footer div{flex:0!important;width:100%!important;min-width:initial!important}.footer div p{margin:0!important;padding:6px 0!important;font-size:12px!important;line-height:1.3!important}.card,.panel,.box,.section{padding:12px!important;margin-bottom:12px;border-radius:4px}.modal,.modal-content,.dialog{max-height:95vh!important;max-width:100%!important;width:calc(100% - 20px)!important;overflow-y:auto}.grid,.form-grid,.two-column,.three-column{grid-template-columns:1fr!important;gap:10px}.flex-row{flex-direction:column!important}.flex-between{flex-direction:column!important;align-items:flex-start!important}.mt-1,.mt-2,.mt-3,.mt-4,.mt-5{margin-top:8px!important}.mb-1,.mb-2,.mb-3,.mb-4,.mb-5{margin-bottom:8px!important}.p-1,.p-2,.p-3,.p-4,.p-5{padding:8px!important}.text-center,.text-right{text-align:left}.overflow-hidden{overflow:hidden!important}.overflow-auto{overflow-y:auto;overflow-x:hidden}.floating,.sticky,.fixed{position:relative!important}nav{width:100%;flex-direction:column}nav a,nav button{width:100%;text-align:center}.margin-auto{margin:0}p,span,div,a,li{word-wrap:break-word;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto}[hidden]{display:none!important}.modal-overlay,.modal,.dropdown,.tooltip{z-index:1000}.alert,.notification,.message,.error,.success{width:100%;padding:12px;margin-bottom:10px;word-wrap:break-word}.search-box,.search-input{width:100%;padding:10px}.filter-box,.filters{width:100%;flex-direction:column}.filter-box input,.filter-box select,.filters input,.filters select{width:100%}.badge,.tag,.label{display:inline-block;word-wrap:break-word;padding:4px 8px;margin:2px}.upload-area,.dropzone{width:100%;padding:20px;min-height:80px}input[type=range]{width:100%}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#f1f1f1}::-webkit-scrollbar-thumb{background:#888;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#555}}@media (max-width: 320px){body{font-size:13px}h1{font-size:1.3em}h2{font-size:1.1em}h3{font-size:.95em}input,select,textarea,button{font-size:14px!important;padding:10px!important}.container{padding:8px!important}table{font-size:12px}table th,table td{padding:8px 4px;box-sizing:border-box}}@media (orientation: landscape) and (max-height: 500px){.navbar{padding:8px}.navbar h1{font-size:1em}.main-content{padding:8px}}@media print{.no-print,.navbar,.sidebar,button,.filter-box,.upload-area{display:none!important}body{background:white;font-size:12pt}table{border-collapse:collapse}table,th,td{border:1px solid black}}
