@import url(https://fonts.googleapis.com/css2?family=Poppins:wght@400;500;600&display=swap);@import url(https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap);:root{--primary-blue:#2563eb;--dark-blue:#1e40af;--light-gray:#f3f4f6;--text-dark:#1f2937;--text-light:#6b7280;--error-red:#dc2626;--success-green:#16a34a}*{font-family:Poppins,sans-serif}.activate-container,.home-container{background:linear-gradient(#0009,#000000b3),url(/static/media/background.87b7cf0bf00be94b5bb2.jpg) 50%/cover fixed;display:grid;min-height:100vh;padding:1rem;place-items:center}.home-overlay{display:flex;justify-content:center;max-width:1200px;width:100%}.activation-card,.home-card{animation:cardEntrance .6s ease-out;background:#fffffffa;border-radius:1.5rem;box-shadow:0 8px 32px #0000001a;max-width:480px;padding:2.5rem;width:100%}.activation-card h2,.home-card h2{color:#1f2937;color:var(--text-dark);font-size:1.8rem;margin-bottom:2rem;text-align:center}.activation-form,.home-form{display:flex;flex-direction:column;gap:1.5rem}.form-input,.home-input{border:2px solid #e5e7eb;border-radius:.75rem;font-size:1rem;padding:.9rem 1.2rem;transition:all .3s ease;width:100%}.form-input:focus,.home-input:focus{border-color:#2563eb;border-color:var(--primary-blue);box-shadow:0 0 0 3px #2563eb1a;outline:none}.captcha-box,.home-captcha{align-items:center;background:#f3f4f6;background:var(--light-gray);border-radius:.75rem;display:flex;gap:1rem;padding:1rem}.captcha-input,.home-captcha-input{font-weight:600;text-align:center;width:150px}.activate-button,.home-button{background:linear-gradient(90deg,#2563eb,#1e40af);background:linear-gradient(to right,var(--primary-blue),var(--dark-blue));border:none;border-radius:.75rem;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:1rem;transition:all .3s ease;width:100%}.activate-button:hover,.home-button:hover{box-shadow:0 4px 12px #2563eb33;transform:translateY(-1px)}.home-links{display:flex;flex-direction:column;gap:.75rem;margin-top:1.5rem}.back-link,.home-links a{color:#6b7280;color:var(--text-light);font-size:.9rem;text-decoration:none;transition:color .2s ease}.back-link:hover,.home-links a:hover{color:#2563eb;color:var(--primary-blue)}.login-btn{background:#2563eb;background:var(--primary-blue);border-radius:.75rem;color:#fff!important;padding:.75rem 1.5rem;text-align:center}.error-message{background:#dc2626;background:var(--error-red);border-radius:.5rem;margin:-.5rem 0 1rem;padding:.8rem}.activation-instructions{background:#f3f4f6;background:var(--light-gray);border-radius:1rem;margin:2rem 0;padding:1.5rem}.activation-instructions ol{color:#6b7280;color:var(--text-light);padding-left:1.5rem}.support-info{background:#f3f4f6;background:var(--light-gray);border-radius:1rem;padding:1.5rem}@keyframes cardEntrance{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media (max-width:768px){.activation-card,.home-card{border-radius:1rem;padding:2rem}.activation-card h2,.home-card h2{font-size:1.5rem;margin-bottom:1.5rem}}@media (max-width:480px){.activate-container,.home-container{padding:.5rem}.activation-card,.home-card{border-radius:.75rem;padding:1.5rem}.form-input,.home-input{font-size:.9rem;padding:.8rem}.activate-button,.home-button{font-size:.95rem;padding:.9rem}.activation-instructions,.support-info{margin:1.5rem 0;padding:1rem}}.loading-state{color:#666;padding:2rem;text-align:center}.error-message{background:linear-gradient(135deg,#ff6b6b,#ff5252);border-left:4px solid #d32f2f;color:#fff;font-size:.9rem;line-height:1.4;margin-bottom:1rem;padding:1rem}.home-button.submitting{background:linear-gradient(135deg,#ccc,#bbb);cursor:not-allowed;transform:none}.home-button:disabled{cursor:not-allowed;opacity:.7}.spinner{animation:spin 1s ease-in-out infinite;border:2px solid #fff;border-top-color:#0000;display:inline-block;height:16px;margin-right:8px;width:16px}.captcha-container{align-items:center;display:flex;gap:1rem;margin-top:.5rem}.captcha-question{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:6px;color:#fff;font-weight:700;min-width:100px;padding:.5rem 1rem;text-align:center}.home-captcha-input{max-width:120px}.support-info{background:#ffffff1a;border-radius:8px;font-size:.9rem;margin-top:2rem;padding:1rem;text-align:center}.support-info a{color:#667eea;text-decoration:none}.support-info a:hover{text-decoration:underline}.login-help{font-size:.85rem;margin-top:1rem}.login-help details{background:#ffffff0d;border-radius:6px;padding:.5rem}.login-help summary{color:#667eea;cursor:pointer;font-weight:700;padding:.5rem}.login-help summary:hover{color:#764ba2}.login-help ul{margin:.5rem 0;padding-left:1.5rem}.login-help li{color:#ccc;margin:.25rem 0}.form-group label{color:#333}.home-input:disabled{background:#f5f5f5;cursor:not-allowed;opacity:.6}@media (max-width:768px){.captcha-container{flex-direction:column;gap:.5rem}.captcha-question{width:100%}.home-captcha-input{max-width:100%}}:root{--color-primary:#3b82f6;--color-primary-dark:#2563eb;--color-primary-light:#60a5fa;--color-accent:#8b5cf6;--color-gray-50:#f8fafc;--color-gray-100:#f1f5f9;--color-gray-200:#e2e8f0;--color-gray-300:#cbd5e1;--color-gray-400:#94a3b8;--color-gray-500:#64748b;--color-gray-600:#475569;--color-gray-700:#334155;--color-gray-800:#1e293b;--color-gray-900:#0f172a;--color-white:#fff;--color-red:#ef4444;--color-red-light:#fef2f2;--color-green:#10b981;--color-green-light:#f0fdf4;--font-family:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",system-ui,sans-serif;--spacing-1:0.25rem;--spacing-2:0.5rem;--spacing-3:0.75rem;--spacing-4:1rem;--spacing-5:1.25rem;--spacing-6:1.5rem;--spacing-8:2rem;--spacing-10:2.5rem;--spacing-12:3rem;--border-radius:0.75rem;--border-radius-lg:1rem;--border-radius-xl:1.25rem;--border-width:1px;--shadow-colored:0 10px 15px -3px #3b82f61a,0 4px 6px -2px #3b82f60d;--transition-fast:all 0.15s cubic-bezier(0.4,0,0.2,1);--transition-smooth:all 0.3s cubic-bezier(0.4,0,0.2,1);--transition-spring:all 0.4s cubic-bezier(0.68,-0.55,0.265,1.55)}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:linear-gradient(135deg,#f8fafc,#f1f5f9);background:linear-gradient(135deg,var(--color-gray-50) 0,var(--color-gray-100) 100%);color:#0f172a;color:var(--color-gray-900);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;font-family:var(--font-family);font-size:1rem;font-size:var(--font-size-base)}.admin-container{align-items:center;animation:gradientShift 10s ease infinite;background:linear-gradient(135deg,#f8fafc,#f1f5f9 50%,#60a5fa);background:linear-gradient(135deg,var(--color-gray-50) 0,var(--color-gray-100) 50%,var(--color-primary-light) 100%);background-size:400% 400%;display:flex;justify-content:center;min-height:100vh;padding:1rem;padding:var(--spacing-4);position:relative}@keyframes gradientShift{0%{background-position:0 50%}50%{background-position:100% 50%}to{background-position:0 50%}}.admin-container:before{background-image:radial-gradient(circle at 25% 25%,#3b82f608 0,#0000 50%);background-size:200px 200px;bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0}.admin-overlay{animation:slideUp all .6s cubic-bezier(.68,-.55,.265,1.55) .4s;animation:slideUp .6s var(--transition-spring);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:#fffffff2;border:1px solid #fff3;border:var(--border-width) solid #fff3;border-radius:1.25rem;border-radius:var(--border-radius-xl);box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a,0 0 0 1px #ffffff1a;box-shadow:var(--shadow-xl),0 0 0 1px #ffffff1a;max-width:420px;overflow:hidden;position:relative;width:100%}.admin-overlay:before{background:linear-gradient(90deg,#0000,#fffc,#0000);content:"";height:1px;left:0;position:absolute;right:0;top:0}.admin-card{padding:2.5rem 2rem;padding:var(--spacing-10) var(--spacing-8);position:relative}.admin-card:after{background:linear-gradient(135deg,#60a5fa,#8b5cf6);background:linear-gradient(135deg,var(--color-primary-light),var(--color-accent));border-radius:0 1.25rem 0 100%;border-radius:0 var(--border-radius-xl) 0 100%;content:"";height:60px;opacity:.1;position:absolute;right:0;top:0;width:60px}.admin-card h2{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#0f172a,#3b82f6);background:linear-gradient(135deg,var(--color-gray-900),var(--color-primary));-webkit-background-clip:text;background-clip:text;font-size:1.875rem;font-size:var(--font-size-3xl);font-weight:700;letter-spacing:-.025em;line-height:1.2;margin-bottom:.5rem;margin-bottom:var(--spacing-2);text-align:center}.admin-card h2:after{-webkit-text-fill-color:#64748b;-webkit-text-fill-color:var(--color-gray-500);color:#64748b;color:var(--color-gray-500);content:"Secure Access Portal";display:block;font-size:.875rem;font-size:var(--font-size-sm);font-weight:500;letter-spacing:.05em;margin-top:.5rem;margin-top:var(--spacing-2);text-transform:uppercase}.admin-card h2:before{background:linear-gradient(90deg,#3b82f6,#8b5cf6);background:linear-gradient(90deg,var(--color-primary),var(--color-accent));border-radius:2px;bottom:-var(--spacing-6);content:"";height:3px;left:50%;position:absolute;transform:translateX(-50%);width:40px}.error-message{animation:errorFadeIn all .4s cubic-bezier(.68,-.55,.265,1.55) .4s;animation:errorFadeIn .4s var(--transition-spring);background:linear-gradient(135deg,#fef2f2,#fef7f7);background:linear-gradient(135deg,var(--color-red-light),#fef7f7);border:1px solid #fca5a5;border:var(--border-width) solid #fca5a5;border-radius:.75rem;border-radius:var(--border-radius);box-shadow:0 1px 2px 0 #0000000d;box-shadow:var(--shadow-sm);color:var(--color-red);font-size:var(--font-size-sm);margin-bottom:1.5rem;margin-bottom:var(--spacing-6);padding:1rem 1.25rem;padding:var(--spacing-4) var(--spacing-5);position:relative;text-align:center}.error-message:before{content:"⚠";font-size:1rem;font-size:var(--font-size-base);margin-right:.5rem;margin-right:var(--spacing-2)}@keyframes errorFadeIn{0%{opacity:0;transform:translateY(-10px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.admin-form{display:flex;flex-direction:column;gap:1.5rem;gap:var(--spacing-6);margin-top:2rem;margin-top:var(--spacing-8)}.admin-input{background:linear-gradient(135deg,#fff,#fefefe);background:linear-gradient(135deg,var(--color-white),#fefefe);border:2px solid #e2e8f0;border:2px solid var(--color-gray-200);border-radius:.75rem;border-radius:var(--border-radius);box-shadow:0 1px 2px 0 #0000000d;box-shadow:var(--shadow-sm);color:#0f172a;color:var(--color-gray-900);font-family:inherit;font-size:1rem;font-size:var(--font-size-base);font-weight:400;height:52px;outline:none;padding:1rem 1.25rem;padding:var(--spacing-4) var(--spacing-5);transition:all .3s cubic-bezier(.4,0,.2,1);transition:var(--transition-smooth);width:100%}.admin-input::placeholder{color:#94a3b8;color:var(--color-gray-400);transition:all .15s cubic-bezier(.4,0,.2,1);transition:var(--transition-fast)}.admin-input:hover:not(:focus):not(:disabled){border-color:#cbd5e1;border-color:var(--color-gray-300);box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;box-shadow:var(--shadow-md);transform:translateY(-1px)}.admin-input:focus{background:#fff;background:var(--color-white);border-color:#3b82f6;border-color:var(--color-primary);box-shadow:0 10px 15px -3px #3b82f61a,0 4px 6px -2px #3b82f60d;box-shadow:var(--shadow-colored);transform:translateY(-2px)}.admin-input:focus::placeholder{color:#cbd5e1;color:var(--color-gray-300);transform:translateX(4px)}.admin-input:disabled{background:linear-gradient(135deg,#f1f5f9,#f8fafc);background:linear-gradient(135deg,var(--color-gray-100),var(--color-gray-50));border-color:#e2e8f0;border-color:var(--color-gray-200);box-shadow:none;color:#64748b;color:var(--color-gray-500);cursor:not-allowed;transform:none}.admin-button{background:linear-gradient(135deg,#3b82f6,#2563eb);background:linear-gradient(135deg,var(--color-primary),var(--color-primary-dark));border:none;border-radius:.75rem;border-radius:var(--border-radius);box-shadow:0 10px 15px -3px #3b82f61a,0 4px 6px -2px #3b82f60d;box-shadow:var(--shadow-colored);color:#fff;color:var(--color-white);cursor:pointer;font-family:inherit;font-size:1rem;font-size:var(--font-size-base);font-weight:600;height:52px;letter-spacing:.025em;margin-top:.75rem;margin-top:var(--spacing-3);outline:none;overflow:hidden;padding:1rem 1.25rem;padding:var(--spacing-4) var(--spacing-5);position:relative;text-transform:uppercase;transition:all .3s cubic-bezier(.4,0,.2,1);transition:var(--transition-smooth);width:100%}.admin-button:before{background:linear-gradient(90deg,#0000,#ffffff4d,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .6s;width:100%}.admin-button:hover:not(:disabled):before{left:100%}.admin-button:hover:not(:disabled){background:linear-gradient(135deg,#2563eb,#1e40af);background:linear-gradient(135deg,var(--color-primary-dark),#1e40af);box-shadow:0 15px 25px -5px #3b82f633,0 8px 10px -5px #3b82f61a;transform:translateY(-2px)}.admin-button:focus:not(:disabled){box-shadow:0 0 0 3px #3b82f633,0 10px 15px -3px #3b82f61a,0 4px 6px -2px #3b82f60d;box-shadow:0 0 0 3px #3b82f633,var(--shadow-colored)}.admin-button:active:not(:disabled){background:linear-gradient(135deg,#1e40af,#1e3a8a);transform:translateY(0)}.admin-button:disabled{background:linear-gradient(135deg,#cbd5e1,#94a3b8);background:linear-gradient(135deg,var(--color-gray-300),var(--color-gray-400));box-shadow:0 1px 2px 0 #0000000d;box-shadow:var(--shadow-sm);color:#64748b;color:var(--color-gray-500);cursor:not-allowed;position:relative;transform:none}.admin-button:disabled:after{animation:spin 1s linear infinite;border:2px solid #94a3b8;border-top:2px solid #64748b;border:2px solid var(--color-gray-400);border-radius:50%;border-top-color:var(--color-gray-500);content:"";height:18px;position:absolute;right:1.25rem;right:var(--spacing-5);top:50%;transform:translateY(-50%);width:18px}.input-group{margin-bottom:1.5rem;margin-bottom:var(--spacing-6);position:relative}.floating-label{background:#fff;background:var(--color-white);border-radius:.25rem;border-radius:var(--spacing-1);color:#94a3b8;color:var(--color-gray-400);font-size:1rem;font-size:var(--font-size-base);left:1.25rem;left:var(--spacing-5);padding:0 .25rem;padding:0 var(--spacing-1);pointer-events:none;position:absolute;top:50%;transform:translateY(-50%);transition:all .3s cubic-bezier(.4,0,.2,1);transition:var(--transition-smooth)}.admin-input:focus+.floating-label,.admin-input:not(:placeholder-shown)+.floating-label{color:#3b82f6;color:var(--color-primary);font-size:.875rem;font-size:var(--font-size-sm);font-weight:500;top:0;transform:translateY(-50%)}.success-message{animation:successFadeIn all .4s cubic-bezier(.68,-.55,.265,1.55) .4s;animation:successFadeIn .4s var(--transition-spring);background:linear-gradient(135deg,#f0fdf4,#f0fdf8);background:linear-gradient(135deg,var(--color-green-light),#f0fdf8);border:1px solid #a7f3d0;border:var(--border-width) solid #a7f3d0;border-radius:.75rem;border-radius:var(--border-radius);box-shadow:0 1px 2px 0 #0000000d;box-shadow:var(--shadow-sm);color:#10b981;color:var(--color-green);font-size:.875rem;font-size:var(--font-size-sm);font-weight:500;margin-bottom:1.5rem;margin-bottom:var(--spacing-6);padding:1rem 1.25rem;padding:var(--spacing-4) var(--spacing-5);text-align:center}.success-message:before{content:"✓";font-size:1rem;font-size:var(--font-size-base);margin-right:.5rem;margin-right:var(--spacing-2)}.security-indicator{align-items:center;bottom:1rem;bottom:var(--spacing-4);color:#94a3b8;color:var(--color-gray-400);display:flex;font-size:.75rem;font-size:var(--font-size-xs);font-weight:500;gap:.5rem;gap:var(--spacing-2);left:50%;letter-spacing:.05em;position:absolute;text-transform:uppercase;transform:translateX(-50%)}.security-indicator:before{content:"🔒";font-size:.875rem;font-size:var(--font-size-sm)}@media (max-width:1024px){.admin-overlay{max-width:400px}.admin-card{padding:2rem 1.5rem;padding:var(--spacing-8) var(--spacing-6)}}@media (max-width:768px){.admin-container{padding:.75rem;padding:var(--spacing-3)}.admin-card{padding:1.5rem 1.25rem;padding:var(--spacing-6) var(--spacing-5)}.admin-card h2{font-size:1.5rem;font-size:var(--font-size-2xl);margin-bottom:.5rem;margin-bottom:var(--spacing-2)}.admin-form{gap:1.25rem;gap:var(--spacing-5);margin-top:1.5rem;margin-top:var(--spacing-6)}.admin-button,.admin-input{height:48px}}@media (max-width:480px){.admin-container{padding:.5rem;padding:var(--spacing-2)}.admin-overlay{border-radius:1rem;border-radius:var(--border-radius-lg);max-width:none}.admin-card{padding:1.25rem 1rem;padding:var(--spacing-5) var(--spacing-4)}.admin-card h2{font-size:1.25rem;font-size:var(--font-size-xl);margin-bottom:.5rem;margin-bottom:var(--spacing-2)}.admin-card h2:after{font-size:.75rem;font-size:var(--font-size-xs)}.admin-button,.admin-input{font-size:.875rem;font-size:var(--font-size-sm);height:44px}.admin-form{gap:1rem;gap:var(--spacing-4);margin-top:1.25rem;margin-top:var(--spacing-5)}.error-message,.success-message{font-size:.75rem;font-size:var(--font-size-xs);padding:.75rem 1rem;padding:var(--spacing-3) var(--spacing-4)}}@media (max-width:360px){.admin-card{padding:1rem .75rem;padding:var(--spacing-4) var(--spacing-3)}.admin-card h2{font-size:1.125rem;font-size:var(--font-size-lg)}.admin-button,.admin-input{height:40px;padding:.75rem;padding:var(--spacing-3)}}@media (prefers-contrast:high){.admin-overlay{background:#fff;background:var(--color-white);border:2px solid #0f172a;border:2px solid var(--color-gray-900)}.admin-input{border:2px solid #475569;border:2px solid var(--color-gray-600)}.admin-button,.admin-input:focus{border:2px solid #3b82f6;border:2px solid var(--color-primary)}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.admin-container{animation:none;background:linear-gradient(135deg,#f8fafc,#f1f5f9);background:linear-gradient(135deg,var(--color-gray-50),var(--color-gray-100))}}.admin-button:focus-visible,.admin-input:focus-visible{outline:2px solid #3b82f6;outline:2px solid var(--color-primary);outline-offset:2px}.admin-input.success{background:linear-gradient(135deg,#f0fdf4,#fff);background:linear-gradient(135deg,var(--color-green-light),var(--color-white))}.admin-input.success,.admin-input.success:focus{border-color:#10b981;border-color:var(--color-green)}.admin-input.success:focus{box-shadow:0 0 0 3px #10b9811a}.admin-input.error{background:linear-gradient(135deg,#fef2f2,#fff);background:linear-gradient(135deg,var(--color-red-light),var(--color-white))}.admin-input.error,.admin-input.error:focus{border-color:#ef4444;border-color:var(--color-red)}.admin-input.error:focus{box-shadow:0 0 0 3px #ef44441a}.field-error{align-items:center;color:#ef4444;color:var(--color-red);display:flex;font-size:.75rem;font-size:var(--font-size-xs);gap:.25rem;gap:var(--spacing-1);margin-top:.5rem;margin-top:var(--spacing-2)}.field-error:before{content:"⚠";font-size:.875rem;font-size:var(--font-size-sm)}.field-success{align-items:center;color:#10b981;color:var(--color-green);display:flex;font-size:.75rem;font-size:var(--font-size-xs);gap:.25rem;gap:var(--spacing-1);margin-top:.5rem;margin-top:var(--spacing-2)}.field-success:before{content:"✓";font-size:.875rem;font-size:var(--font-size-sm)}@media print{.admin-container,.admin-overlay,body{background:#fff}.admin-overlay{border:1px solid #0f172a;border:1px solid var(--color-gray-900);box-shadow:none}.admin-button{background:#0f172a;background:var(--color-gray-900);color:#fff}.admin-card h2{-webkit-text-fill-color:#0f172a;-webkit-text-fill-color:var(--color-gray-900);color:#0f172a;color:var(--color-gray-900)}}:root{--primary-color:#2c3e50;--primary-color-light:#34495e;--primary-color-dark:#1a252f;--secondary-color:#3498db;--secondary-color-hover:#2980b9;--success-color:#27ae60;--danger-color:#e74c3c;--warning-color:#f39c12;--info-color:#3498db;--text-color:#2d3436;--text-color-light:#636e72;--sidebar-text-color:#ffffffd9;--sidebar-text-hover-color:#fff;--sidebar-active-bg:#ffffff1a;--sidebar-active-border:var(--secondary-color);--sidebar-icon-size:20px;--sidebar-collapsed-width:70px;--transition-standard:0.3s cubic-bezier(0.4,0,0.2,1);--box-shadow-sidebar:0 2px 12px #00000026;--box-shadow-medium:0 4px 8px #0000001a;--box-shadow-light:0 2px 4px #0000000d;--border-color:#e0e0e0;--background-light:#f9f9f9}body{background-color:#f5f5f5;color:#2d3436;color:var(--text-color);font-family:Segoe UI,Roboto,system-ui,sans-serif;font-size:16px;margin:0}body.sidebar-active-mobile{overflow:hidden}.admin-dashboard{display:flex;min-height:100vh}.admin-sidebar{scrollbar-color:#fff3 #0000;scrollbar-width:thin;transition:width .3s cubic-bezier(.4,0,.2,1),transform .3s cubic-bezier(.4,0,.2,1);transition:width var(--transition-standard),transform var(--transition-standard);will-change:width,transform}.admin-sidebar::-webkit-scrollbar{width:4px}.admin-sidebar::-webkit-scrollbar-track{background:#ffffff0d}.admin-sidebar::-webkit-scrollbar-thumb{background:#fff3;border-radius:2px}.admin-sidebar::-webkit-scrollbar-thumb:hover{background:#ffffff4d}.admin-title{border-bottom:1px solid #ffffff14;font-size:1.4rem;font-weight:600;gap:.75rem;height:64px;letter-spacing:.5px;margin:0;padding:0 1.5rem;white-space:nowrap}.admin-title,.admin-title .logo-icon{align-items:center;color:#fff;display:flex;flex-shrink:0;transition:all .3s cubic-bezier(.4,0,.2,1);transition:all var(--transition-standard)}.admin-title .logo-icon{background-color:#3498db;background-color:var(--secondary-color);border-radius:8px;height:32px;justify-content:center;width:32px}.admin-title .title-text{opacity:1;transform:translateX(0);transition:opacity .3s cubic-bezier(.4,0,.2,1),transform .3s cubic-bezier(.4,0,.2,1);transition:opacity var(--transition-standard),transform var(--transition-standard)}.admin-menu{flex-grow:1;list-style:none;margin:0;overflow-y:auto;padding:1rem 0}.admin-menu li{margin:0}.admin-menu a,.admin-menu button{align-items:center;background:#0000;border:none;border-left:3px solid #0000;color:#ffffffd9;color:var(--sidebar-text-color);cursor:pointer;display:flex;font-size:.95rem;font-weight:500;gap:1rem;margin:.25rem 0;overflow:hidden;padding:.85rem 1.5rem;position:relative;text-align:left;text-decoration:none;transition:background-color .2s ease,color .2s ease,border-left-color .2s ease,box-shadow .2s ease;white-space:nowrap;width:100%}.admin-menu .menu-icon{color:currentColor;flex-shrink:0;height:20px;height:var(--sidebar-icon-size);opacity:.9;transition:all .25s ease;width:20px;width:var(--sidebar-icon-size)}.admin-menu .menu-text{opacity:1;transform:translateX(0);transition:opacity .3s cubic-bezier(.4,0,.2,1),transform .3s cubic-bezier(.4,0,.2,1);transition:opacity var(--transition-standard),transform var(--transition-standard)}.admin-menu a:hover,.admin-menu button:hover{background:#ffffff1a;background:var(--sidebar-active-bg);border-left-color:#fff3;color:#fff;color:var(--sidebar-text-hover-color)}.admin-menu a.active,.admin-menu button.active{background:#ffffff1a;background:var(--sidebar-active-bg);border-left-color:#3498db;border-left-color:var(--sidebar-active-border);box-shadow:inset 2px 0 8px #0000001a;color:#fff;font-weight:600}.admin-menu a.active .menu-icon,.admin-menu button.active .menu-icon{color:#3498db;color:var(--secondary-color);transform:scale(1.1)}.badge{background:#3498db;background:var(--secondary-color);border-radius:10px;color:#fff;font-size:.75em;font-weight:600;line-height:1.2;margin-left:auto;min-width:18px;opacity:1;padding:.15rem .5rem;text-align:center;transform:translateX(0)}.badge,.collapse-toggle{transition:all .3s cubic-bezier(.4,0,.2,1);transition:all var(--transition-standard)}.collapse-toggle{align-items:center;background:#0000;border:none;color:#ffffffd9;color:var(--sidebar-text-color);cursor:pointer;display:flex;flex-shrink:0;height:56px;justify-content:flex-end;margin-top:auto;padding:0 1.5rem;width:100%}.collapse-toggle:hover{background-color:#ffffff0d;color:#fff}.collapse-toggle .menu-icon{height:20px;height:var(--sidebar-icon-size);transition:transform .3s cubic-bezier(.4,0,.2,1);transition:transform var(--transition-standard);width:20px;width:var(--sidebar-icon-size)}.admin-sidebar.collapsed .admin-title .title-text{opacity:0;pointer-events:none;transform:translateX(-20px);width:0}.admin-sidebar.collapsed .admin-title{justify-content:center;padding:0}.admin-sidebar.collapsed .admin-title .logo-icon{margin:0}.admin-sidebar.collapsed .admin-menu a,.admin-sidebar.collapsed .admin-menu button{border-left-width:0;justify-content:center;padding-left:0;padding-right:0}.admin-sidebar.collapsed .admin-menu a .menu-text,.admin-sidebar.collapsed .admin-menu button .menu-text,.admin-sidebar.collapsed .badge{margin-left:-1rem;opacity:0;pointer-events:none;transform:translateX(-20px);width:0}.admin-sidebar.collapsed .admin-menu a.active,.admin-sidebar.collapsed .admin-menu button.active{border-right:3px solid #3498db;border-right:3px solid var(--sidebar-active-border);box-shadow:none}.admin-sidebar.collapsed .collapse-toggle{justify-content:center;padding:0}.admin-sidebar.collapsed .admin-menu a:after,.admin-sidebar.collapsed .admin-menu button:after{background-color:#1a252f;background-color:var(--primary-color-dark);border-radius:4px;box-shadow:0 2px 8px #0003;color:#fff;content:attr(data-tooltip);font-size:.85rem;left:80px;left:calc(var(--sidebar-collapsed-width) + 10px);opacity:0;padding:.5rem .8rem;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%);transition:opacity .2s ease .3s;visibility:hidden;white-space:nowrap;z-index:110}.admin-sidebar.collapsed .admin-menu a:before,.admin-sidebar.collapsed .admin-menu button:before{border:6px solid #0000;border-right:6px solid var(--primary-color-dark);content:"";left:74px;left:calc(var(--sidebar-collapsed-width) + 4px);opacity:0;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%);transition:opacity .2s ease .3s;visibility:hidden;z-index:111}.admin-sidebar.collapsed .admin-menu a:hover:after,.admin-sidebar.collapsed .admin-menu a:hover:before,.admin-sidebar.collapsed .admin-menu button:hover:after,.admin-sidebar.collapsed .admin-menu button:hover:before{opacity:1;visibility:visible}.admin-content{flex:1 1;margin-left:260px;margin-left:var(--sidebar-width);padding:2rem;transition:margin-left .3s cubic-bezier(.4,0,.2,1),width .3s cubic-bezier(.4,0,.2,1);transition:margin-left var(--transition-standard),width var(--transition-standard);width:calc(100% - 260px);width:calc(100% - var(--sidebar-width));will-change:margin-left,width}.admin-sidebar.collapsed+.admin-content{margin-left:70px;margin-left:var(--sidebar-collapsed-width);width:calc(100% - 70px);width:calc(100% - var(--sidebar-collapsed-width))}.content-box{border-radius:12px;box-shadow:0 4px 8px #0000001a;box-shadow:var(--box-shadow-medium);margin-bottom:2rem;padding:2rem}.management-header{align-items:center;display:flex;flex-wrap:wrap;gap:1.5rem;justify-content:space-between;margin-bottom:2rem}.controls{flex-grow:1}.search-filter-group{display:flex;flex-grow:1;flex-wrap:wrap;gap:.75rem}.search-input{border:1px solid #e0e0e0;font-size:.95rem;padding:.75rem 1rem;transition:border-color .2s,box-shadow .2s}.search-input:focus{border-color:#3498db;border-color:var(--secondary-color);box-shadow:0 0 0 3px #3498db1a}.filter-select{background-color:#fff;border:1px solid #e0e0e0;box-sizing:border-box;font-size:.9rem;height:calc(3rem + 2px)}.action-group{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem}.admin-action-button{align-items:center;border:none;border-radius:8px;cursor:pointer;display:inline-flex;font-size:.95rem;font-weight:500;gap:.5rem;justify-content:center;line-height:1.5;padding:.75rem 1.25rem;text-decoration:none;transition:all .2s ease}.admin-action-button.primary{background-color:#3498db;background-color:var(--secondary-color);color:#fff}.admin-action-button.primary:hover:not(:disabled){background:#2980b9;background:var(--secondary-color-hover)}.admin-action-button.success{background-color:#27ae60;background-color:var(--success-color);color:#fff}.admin-action-button.success:hover:not(:disabled){background:#219a52}.admin-action-button.danger{background-color:#e74c3c;background-color:var(--danger-color)}.admin-action-button.danger:hover:not(:disabled){background:#c0392b}.admin-action-button.warning{background-color:#f39c12;background-color:var(--warning-color);color:#2d3436;color:var(--text-color)}.admin-action-button.warning:hover:not(:disabled){background:#d38d0a}.admin-action-button.template{background:#16a085;color:#fff}.admin-action-button.template:hover:not(:disabled){background:#138d75}.admin-action-button.back-button{background:#7f8c8d;color:#fff}.admin-action-button.back-button:hover:not(:disabled){background:#666}.admin-action-button:hover:not(:disabled){opacity:.9;transform:translateY(-1px)}.admin-action-button:active:not(:disabled){opacity:1;transform:translateY(0)}.admin-action-button:disabled{cursor:not-allowed;opacity:.6}.icon-button{background:none;padding:.5rem;transition:all .2s ease}.icon-button:hover:not(:disabled){background:#f9f9f9;background:var(--background-light)}.export-button{background-color:#27ae60;background-color:var(--success-color);color:#fff}.export-button:hover:not(:disabled){background:#219a52}.button-group{display:flex;flex-wrap:wrap;gap:.5rem}.table-container{-webkit-overflow-scrolling:touch;border:1px solid #e0e0e0;border:1px solid var(--border-color);border-radius:8px;box-shadow:0 2px 4px #0000000d;box-shadow:var(--box-shadow-light);margin-bottom:2rem;position:relative}.data-table{border-collapse:initial;border-spacing:0}.data-table thead{box-shadow:0 2px 8px #0000001a;position:sticky;z-index:2}.data-table thead,.data-table thead:before{background-color:#f9f9f9;background-color:var(--background-light);top:0}.data-table thead:before{content:"";height:100%;left:0;position:absolute;width:100%;z-index:1}.data-table td,.data-table th{border-bottom:1px solid #e0e0e0;border-bottom:1px solid var(--border-color);padding:1rem}.data-table th{background-color:initial;position:relative;white-space:nowrap;z-index:2}.data-table tr:hover{background-color:#f5f7fa80;transition:background-color .2s ease}.fixed-first-column td:first-child,.fixed-first-column th:first-child{background-color:#fff;border-right:1px solid #e0e0e0;border-right:1px solid var(--border-color);box-shadow:2px 0 5px #0000000d;left:0;position:sticky;z-index:1}.fixed-first-column th:first-child{background-color:#f9f9f9;background-color:var(--background-light);z-index:3}.row-actions{display:flex;gap:.5rem;justify-content:flex-end}.data-table tr.selected{background-color:#3498db1a}.data-table tr.selected:hover{background-color:#3498db26}.resizable-column{position:relative}.column-resize-handle{background:#0000;cursor:col-resize;height:100%;position:absolute;right:-2px;top:0;width:4px;z-index:3}.column-resize-handle.resizing,.column-resize-handle:hover{background:#3498db80}.sortable-column{cursor:pointer;-webkit-user-select:none;user-select:none}.sort-indicator{border:5px solid #0000;display:inline-block;height:0;margin-left:5px;vertical-align:middle;width:0}.sort-indicator.asc{border-bottom-color:initial}.sort-indicator.desc{border-top-color:initial}.row-loading td{background-color:#eee;color:#0000!important;overflow:hidden;position:relative}.row-loading td:after{animation:loading-shimmer 1.5s linear infinite;background:linear-gradient(90deg,#f0f0f0,#e0e0e0,#f0f0f0);background-size:200% 100%;content:"";height:100%;left:0;position:absolute;top:0;width:100%}@keyframes loading-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.table-pagination{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;margin-top:1.5rem}.pagination-info{color:#636e72;color:var(--text-color-light);font-size:.9rem}.pagination-controls{display:flex;gap:.5rem}.pagination-button{background:#fff;border:1px solid #e0e0e0;border:1px solid var(--border-color);border-radius:4px;cursor:pointer;padding:.5rem 1rem;transition:all .2s}.pagination-button:hover:not(:disabled){background:#f9f9f9;background:var(--background-light)}.pagination-button:disabled{cursor:not-allowed;opacity:.5}.pagination-button.active{background:#3498db;background:var(--secondary-color);border-color:#3498db;border-color:var(--secondary-color);color:#fff}.status-indicator{display:inline-block;height:10px;margin-right:8px;vertical-align:middle;width:10px}.status-indicator.active{background-color:#27ae60;background-color:var(--success-color)}.status-indicator.inactive{background-color:#e74c3c;background-color:var(--danger-color)}.status-indicator.pending{background-color:#f39c12;background-color:var(--warning-color)}.status-badge{display:inline-block;line-height:1.2;padding:4px 10px}.status-badge.active{background-color:#4caf50;color:#fff}.status-badge.inactive{background-color:#f44336;color:#fff}.status-badge.probation{background-color:#ffc107;color:#000}.student-ID{color:#555;font-family:monospace;font-weight:700}.program-badge{background:#e3f2fd;border-radius:6px;color:#1565c0;display:inline-block;font-size:.85rem;padding:.25rem .75rem}.enrollment-meter{background:#eee;border-radius:10px;height:20px;overflow:hidden;position:relative;width:120px}.enrollment-fill{background:#3498db;background:var(--secondary-color);height:100%;transition:width .3s ease}.student-management .table-container{max-height:65vh;overflow-y:auto}.student-management .data-table thead{position:sticky;top:0;z-index:2}.student-management .table-container::-webkit-scrollbar{height:8px;width:8px}.student-management .table-container::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}.student-management .table-container::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:4px}.student-management .table-container::-webkit-scrollbar-thumb:hover{background:#a8a8a8}.bulk-action-container{align-items:center;display:flex;flex-wrap:wrap;gap:10px;margin:1rem 0}.bulk-action-group{background:#fff;border:1px solid #e0e0e0;border:1px solid var(--border-color);border-radius:8px;box-shadow:0 2px 6px #0000001a;display:inline-flex;overflow:hidden}.bulk-select-wrapper{border-right:1px solid #e0e0e0;border-right:1px solid var(--border-color);position:relative}.bulk-action-select{appearance:none;-webkit-appearance:none;-moz-appearance:none;background:#0000;border:none;box-sizing:border-box;color:#2d3436;color:var(--text-color);cursor:pointer;font-size:.95rem;height:100%;min-width:180px;padding:.75rem 2.5rem .75rem 1.25rem}.bulk-action-select:disabled{background-color:#f9f9f9;background-color:var(--background-light);color:#999;cursor:not-allowed}.custom-arrow{border-left:5px solid #0000;border-right:5px solid #0000;border-top:5px solid #666;height:0;pointer-events:none;position:absolute;right:1rem;top:50%;transform:translateY(-50%);width:0}.bulk-delete-button{align-items:center;background-color:#e74c3c;background-color:var(--danger-color);border:none;color:#fff;cursor:pointer;display:inline-flex;font-size:.95rem;font-weight:500;gap:.75rem;padding:.75rem 1.5rem;transition:all .2s ease}.bulk-delete-button:hover:not(:disabled){background-color:#c0392b}.bulk-delete-button:disabled{background-color:#bdc3c7;cursor:not-allowed;opacity:.7}.pending-requests-view{background:#fff;border-radius:12px;box-shadow:0 2px 4px #0000000d;box-shadow:var(--box-shadow-light);margin-top:20px;padding:2rem}.requests-header{align-items:center;border-bottom:1px solid #eee;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;margin-bottom:2rem;padding-bottom:1rem}.requests-count{background:#e3f2fd;border-radius:20px;color:#1976d2;font-size:.9rem;font-weight:600;padding:.5rem 1rem}.requests-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.request-card{border:1px solid #e0e0e0;justify-content:space-between;transition:transform .2s,box-shadow .2s}.request-card:hover{box-shadow:0 4px 8px #0000001a;box-shadow:var(--box-shadow-medium);transform:translateY(-2px)}.request-meta{align-items:center;justify-content:space-between;margin-bottom:1rem}.request-id{color:#2d3436;font-family:Fira Code,monospace;font-size:1.1em;font-weight:600}.request-date{color:#636e72;font-size:.9em;white-space:nowrap}.detail-item{border-bottom:1px dashed #0000000d;margin:.75rem 0;padding-bottom:.5rem}.detail-item:last-child{padding-bottom:0}.detail-label{color:#636e72;font-size:.9em;margin-right:1rem}.detail-value{color:#2d3436;font-weight:500}.request-actions{grid-gap:.75rem;display:grid;grid-template-columns:1fr 1fr;margin-top:1.5rem}.admin-action-button.approve{background:#e8f5e9;color:#2e7d32}.admin-action-button.approve:hover:not(:disabled){background:#c8e6c9}.admin-action-button.reject{background:#ffebee;color:#c62828}.admin-action-button.reject:hover:not(:disabled){background:#ffcdd2}.icon{fill:currentColor;height:18px;margin-right:.5rem;vertical-align:middle;width:18px}.empty-state{background-color:#f9f9f9;background-color:var(--background-light);border-radius:8px;grid-column:1/-1;padding:4rem 2rem}.empty-icon{color:#b0bec5;height:80px;margin:0 auto 1.5rem;width:80px}.empty-icon svg{height:100%;width:100%}.empty-state h4{color:#2d3436;font-size:1.2rem;margin-bottom:.5rem}.empty-state p{color:#636e72}@media (max-width:600px){.data-table .actions-cell button.icon-button .button-text-label{display:none}.data-table .actions-cell button.icon-button{min-width:auto;padding:.5rem}.data-table .actions-cell button.icon-button .menu-icon{margin-right:0}}.admin-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0006;bottom:0;display:flex;justify-content:center;left:0;padding:1rem;position:fixed;right:0;top:0;z-index:1000}.modal{animation:modalEnter .3s ease forwards;border-radius:12px;box-shadow:0 8px 24px #00000026;max-width:500px;padding:2rem;width:90%;will-change:transform,opacity}@keyframes modalEnter{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.profile-modal{max-width:600px}.edit-form{display:flex;flex-direction:column;gap:1rem;max-height:70vh;overflow-y:auto;padding-right:.5rem}.admin-form-group{margin-bottom:1.5rem}.admin-form-group label{color:#2c3e50;color:var(--primary-color);font-weight:500}.admin-form-group input,.admin-form-group select,.admin-form-group textarea{border:1px solid #e0e0e0;border:1px solid var(--border-color);border-radius:6px;box-sizing:border-box;font-size:1rem;padding:.75rem;transition:border-color .2s,box-shadow .2s;width:100%}.admin-form-group input:focus,.admin-form-group select:focus,.admin-form-group textarea:focus{border-color:#3498db;border-color:var(--secondary-color);box-shadow:0 0 0 3px #3498db1a;outline:none}.form-input,.form-select{box-sizing:border-box;width:100%}.form-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin:1.5rem 0}.form-actions{margin-top:2rem}.profile-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.detail-card{background:#f9f9f9;background:var(--background-light);border-radius:8px;padding:1.5rem}.mobile-menu-toggle{box-shadow:0 2px 8px #0003;font-size:1.25rem;height:40px;padding:0;transition:all .2s ease;width:40px;z-index:101}.mobile-menu-toggle:active{transform:scale(.95)}.sidebar-backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#00000080;cursor:pointer}@media (max-width:1024px){.admin-content,.content-box{padding:1.5rem}.search-input{min-width:220px}.data-table td,.data-table th{padding:.75rem}}@media (max-width:768px){.admin-sidebar{box-shadow:none;transform:translateX(-100%)}.admin-sidebar.active{box-shadow:0 2px 12px #00000026;box-shadow:var(--box-shadow-sidebar);transform:translateX(0)}.admin-content{margin-top:60px;padding:1rem;transition:none}.admin-content,.admin-sidebar.collapsed+.admin-content{margin-left:0!important;width:100%!important}.mobile-menu-toggle{display:flex}.management-header{align-items:flex-start;flex-direction:column;gap:1rem}.search-input{min-width:auto;width:100%}.controls,.search-filter-group{width:100%}.filter-select{flex-grow:1;min-width:120px}.action-group{justify-content:space-between;width:100%}.bulk-action-group{flex-grow:1}.action-group .admin-action-button{flex-basis:content;flex-grow:0}.table-container{border-left:none;border-radius:0;border-right:none;margin:0 -1rem 1.5rem;width:calc(100% + 2rem)}.data-table td,.data-table th{padding:.75rem 1rem}.table-container:after{background:#00000080;border-radius:4px 0 0 0;bottom:0;color:#fff;content:"← Scroll →";font-size:.7rem;opacity:.7;padding:.25rem .5rem;pointer-events:none;position:absolute;right:0}.student-management .table-container{max-height:55vh;min-width:auto}.student-management .data-table{min-width:0;min-width:auto}.requests-container,.requests-grid{grid-template-columns:1fr}.requests-header{align-items:flex-start;flex-direction:column;gap:1rem}.form-grid,.profile-grid{grid-template-columns:1fr}}@media (max-width:576px){.management-header .controls{align-items:stretch;flex-direction:column}.controls .action-group,.controls .search-add-group,.controls .search-filter-group{align-items:stretch;flex-direction:column;width:100%}.controls .action-group .admin-action-button,.controls .search-add-group .admin-action-button,.controls .search-filter-group .filter-select,.controls .search-filter-group .search-input{margin-bottom:.75rem;width:100%}.controls .action-group .admin-action-button:last-child,.controls .search-add-group .admin-action-button:last-child,.controls .search-filter-group .filter-select:last-child{margin-bottom:0}.bulk-action-container{justify-content:center}}@media (max-width:480px){.admin-menu a,.admin-menu button{gap:.75rem;padding:.65rem 1rem}.admin-title{font-size:1.2rem;padding:0 1rem}.admin-action-button{font-size:.9rem;padding:.6rem 1rem}.row-actions-cell{position:relative}.row-actions{display:none}.row-actions-toggle{align-items:center;background:none;border:1px solid #e0e0e0;border:1px solid var(--border-color);border-radius:4px;cursor:pointer;display:inline-flex;justify-content:center;padding:.3rem .5rem}.row-actions-toggle:hover{background-color:#f9f9f9;background-color:var(--background-light)}.row-actions-dropdown{background:#fff;border:1px solid #e0e0e0;border:1px solid var(--border-color);border-radius:4px;box-shadow:0 4px 8px #0000001a;display:none;flex-direction:column;gap:.5rem;min-width:120px;padding:.5rem;position:absolute;right:0;top:100%;z-index:5}.row-actions-dropdown.active{display:flex}.row-action-item{align-items:center;border-radius:4px;color:#2d3436;color:var(--text-color);cursor:pointer;display:flex;font-size:.9rem;padding:.5rem;text-decoration:none;white-space:nowrap}.row-action-item:hover{background-color:#f9f9f9;background-color:var(--background-light)}.modal{padding:1rem}.admin-form-group label{font-size:.9rem}.admin-form-group input,.admin-form-group select,.admin-form-group textarea{font-size:.9rem;padding:.6rem}.request-card{padding:1rem}.request-actions{grid-template-columns:1fr}}@media (max-width:360px){.mobile-menu-toggle{left:.5rem;top:.5rem}.admin-content{margin-top:50px;padding:.5rem}.content-box,.modal{padding:1rem}.modal{border-radius:0;height:100%;max-height:100vh;width:100%}}@media (max-height:800px){.student-management .table-container{max-height:50vh}}.readonly-input{background-color:#f0f0f0;cursor:not-allowed}.management-header .controls{display:flex;gap:1rem;width:100%}.controls .action-group{display:flex;gap:.75rem}.controls .action-group:first-child{margin-bottom:.5rem}.search-add-group{display:flex;flex-wrap:wrap;gap:.75rem;width:100%}.search-input{flex:1 1;min-width:280px}@media (max-width:768px){.search-add-group{flex-direction:column}.search-input{min-width:100%;order:-1}}.import-results-modal{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.modal-content{max-width:600px}.summary{margin:1rem 0}.errors{color:#dc3545;margin-top:1rem}.errors ul{list-style:none;padding-left:0}.close-button{background:#007bff;border-radius:4px;color:#fff;margin-top:1rem;padding:.5rem 1rem}.board-grid{grid-gap:1.5rem;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));margin-top:2rem}.board-card{border-radius:10px;box-shadow:0 2px 8px #0000001a;padding:1.5rem;transition:transform .2s ease}.board-card:hover{transform:translateY(-3px)}.board-header{align-items:center;margin-bottom:1rem}.board-header h3{color:#2c3e50;margin:0}.board-actions{display:flex;gap:.5rem}.board-description{color:#7f8c8d;font-size:.9rem;margin-bottom:1.5rem}.board-stats{display:flex;gap:1.5rem;margin-bottom:1.5rem}.admin-stat-item{align-items:center;color:#34495e;display:flex;gap:.5rem}.manage-btn{background:#3498db;border:none;border-radius:5px;color:#fff;cursor:pointer;padding:.5rem;width:100%}.manage-btn:hover{background:#2980b9}.board-modal{max-width:800px}.dual-select-container{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:1fr 1fr;margin:1rem 0}.select-group h4{color:#2c3e50;margin:0 0 1rem}.scroll-list{border:1px solid #ecf0f1;border-radius:5px;max-height:300px;overflow-y:auto}.select-item{align-items:center;cursor:pointer;display:flex;gap:1rem;padding:.75rem;transition:background .2s ease}.select-item:hover{background:#f8f9fa}.select-item input[type=checkbox]{cursor:pointer;height:16px;width:16px}.config-panel{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:2rem}.config-section{border:1px solid #eee;border-radius:8px;margin-bottom:2rem;padding:1.5rem}.maintenance-section{background-color:#fff9f9;border-color:#ffe6e6}.toggle-group{align-items:center;display:flex;gap:1rem;margin:1rem 0}.toggle-switch{display:inline-block;height:34px;position:relative;width:60px}.toggle-switch input{height:0;opacity:0;width:0}.slider{background-color:#ccc;border-radius:34px;bottom:0;cursor:pointer;left:0;right:0;top:0}.slider,.slider:before{position:absolute;transition:.4s}.slider:before{background-color:#fff;border-radius:50%;bottom:4px;content:"";height:26px;left:4px;width:26px}input:checked+.slider{background-color:#2196f3}input:checked+.slider:before{transform:translateX(26px)}.toggle-labels{display:flex;flex-direction:column}.toggle-labels span{font-size:.9rem}.toggle-labels .active{color:#2196f3;font-weight:500}.status-indicator{color:#666;font-size:.8rem}.warning-text{background-color:#fff3f3;border-radius:4px;color:#d32f2f;font-size:.9rem;margin-top:.5rem;padding:8px}.current-requirement{align-items:center;background-color:#f8f9fa;border-radius:8px;display:flex;gap:1rem;margin:1rem 0;padding:1rem}.credits-icon{color:#4caf50;font-size:1.5rem}.current-label{color:#666;display:block;font-size:.9rem}.current-value{color:#2c3e50;display:block;font-size:1.2rem;font-weight:700}.message{border-radius:4px;margin-top:1rem}.message.success{background-color:#e8f5e9;color:#2e7d32}.message.error{background-color:#ffebee;color:#c62828}.loading{color:#666;font-size:1.2rem;padding:2rem;text-align:center}.toggle-switch:disabled{cursor:not-allowed;opacity:.7}.status-indicator{color:#888;font-style:italic}.my-team-section{margin-bottom:3rem}.my-team-card{background:#38a1690d;border:2px solid #27ae60;border:2px solid var(--success-color)}.status-badge.my-team{background:#27ae60}.member-count{background:var(--gray-100);border-radius:20px;color:var(--text-primary);font-size:.8rem;font-weight:600;padding:.25rem .75rem}.member-count.full{background:#e74c3c;background:var(--danger-color);color:#fff}.team-members{margin:1rem 0}.members-list{flex-wrap:wrap;gap:.75rem;margin-top:.5rem}.member-item{background:var(--white);border:1px solid #e0e0e0;border:1px solid var(--border-color);border-radius:var(--radius-md);gap:.5rem;padding:.5rem}.member-avatar,.member-item{align-items:center;display:flex}.member-avatar{background:var(--gray-400);border-radius:50%;color:#fff;font-size:.8rem;font-weight:600;height:32px;justify-content:center;width:32px}.member-name{font-size:.9rem}.member-role{font-size:.75rem}.team-preview-members{border-top:1px solid #e0e0e0;border-top:1px solid var(--border-color);margin-top:1rem;padding-top:1rem}.members-label{color:var(--text-secondary);font-size:.875rem;font-weight:500}.members-preview{gap:.5rem;margin-top:.5rem}.member-preview{background:var(--gray-100);color:var(--text-secondary)}.member-preview,.more-members{border-radius:12px;font-size:.75rem;padding:.25rem .5rem}.more-members{background:#2c3e50;background:var(--primary-color);color:#fff}.disabled-btn{align-items:center;background:var(--gray-300);border:none;border-radius:var(--radius-lg);color:var(--gray-600);cursor:not-allowed;display:flex;font-weight:500;gap:.5rem;justify-content:center;padding:.75rem;width:100%}.full-team{opacity:.7}.admin-header{align-items:center;display:flex;justify-content:space-between;padding:1rem}.current-credits-display{color:#333;font-size:1rem}.credits-value{color:#2c7a7b;font-weight:700;margin-left:.5rem}.settings-section{margin-bottom:2rem}.settings-section h3{align-items:center;border-bottom:1px solid #dee2e6;color:#2c3e50;display:flex;font-size:1.375rem;font-weight:600;gap:.75rem;margin-bottom:1.5rem;padding-bottom:.75rem}.section-icon{color:#06c;font-size:1.25rem}.settings-card{background:#fff;border:1px solid #dee2e6;border-radius:.5rem;box-shadow:0 2px 8px #0000001a;padding:2rem}.setting-item{background:#f8f9fa;border:1px solid #e9ecef;border-radius:.375rem;margin-bottom:1.5rem;padding:1.25rem}.setting-item:last-child{margin-bottom:0}.setting-item label{align-items:center;color:#495057;cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:.75rem;margin-bottom:.5rem}.setting-item label input[type=checkbox]{accent-color:#06c;cursor:pointer;height:16px;width:16px}.setting-item label span{font-size:1rem;line-height:1.5}.setting-item input[type=number],.setting-item select{background:#fff;border:1px solid #ced4da;border-radius:.25rem;color:#495057;font-size:.875rem;font-weight:400;max-width:200px;padding:.75rem;transition:border-color .15s ease-in-out;width:100%}.setting-item input[type=number]:focus,.setting-item select:focus{border-color:#06c;box-shadow:0 0 0 2px #0066cc40;outline:none}.setting-item small{color:#6c757d;display:block;font-size:.8125rem;line-height:1.4;margin-top:.5rem}.auto-group-rules{background:#f1f3f4;border:1px solid #dee2e6;border-left:4px solid #06c;border-radius:.375rem;margin:1.5rem 0;padding:1.5rem}.auto-group-rules h4{align-items:center;color:#2c3e50;display:flex;font-size:1.125rem;font-weight:600;gap:.5rem;margin-bottom:1rem}.auto-group-rules h4:before{content:"📋";font-size:1.125rem}.rule-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.rule-item{align-items:center;background:#fff;border:1px solid #dee2e6;border-radius:.375rem;padding:1rem;transition:border-color .2s ease}.rule-item:hover{border-color:#06c}.rule-icon{align-items:center;background:#e6f2ff;border-radius:50%;color:#06c;display:flex;font-size:1.5rem;height:40px;justify-content:center;width:40px}.rule-item>div{display:flex;flex:1 1;flex-direction:column;gap:.25rem}.rule-item strong{color:#2c3e50;font-size:.9375rem;line-height:1.3}.rule-item span{color:#6c757d;font-size:.8125rem}.setting-actions{border-top:1px solid #dee2e6;display:flex;justify-content:center;margin-top:2rem;padding-top:1.5rem}.admin-action-button,.save-btn{align-items:center;background:#06c;border:none;border-radius:.375rem;color:#fff;cursor:pointer;display:flex;font-size:.9375rem;font-weight:600;gap:.5rem;letter-spacing:normal;padding:.75rem 2rem;text-transform:none;transition:background-color .2s ease}.admin-action-button:hover,.save-btn:hover{background:#0056b3}.admin-action-button:active,.save-btn:active{background:#004085}.auto-group-status{align-items:center;border-radius:.25rem;display:inline-flex;font-size:.8125rem;font-weight:500;gap:.5rem;margin-left:1rem;padding:.375rem .75rem}.auto-group-status.enabled{background:#d4edda;border:1px solid #c3e6cb;color:#155724}.auto-group-status.disabled{background:#f8d7da;border:1px solid #f5c6cb;color:#721c24}.settings-loading{align-items:center;color:#6c757d;display:flex;justify-content:center;padding:3rem}.loading-spinner{margin-right:.5rem}.success-indicator{background:#d4edda;border:1px solid #c3e6cb;border-radius:.375rem;color:#155724}.error-indicator,.success-indicator{align-items:center;display:flex;gap:.5rem;margin-bottom:1rem;padding:.75rem 1rem}.error-indicator{background:#f8d7da;border:1px solid #f5c6cb;border-radius:.375rem;color:#721c24}@media (min-width:1200px){.rule-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width:1024px){.settings-card{padding:1.5rem}.rule-grid{gap:.875rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.rule-item{padding:.875rem}.rule-icon{font-size:1.25rem;height:36px;width:36px}}@media (max-width:768px){.settings-section h3{font-size:1.25rem}.settings-card{margin:0 .5rem;padding:1.25rem}.setting-item{margin-bottom:1.25rem;padding:1rem}.setting-item input[type=number],.setting-item select{margin-top:.5rem;max-width:100%}.auto-group-rules{margin:1.25rem 0;padding:1.25rem}.rule-grid{gap:.75rem;grid-template-columns:1fr}.rule-item{padding:.75rem}.rule-icon{font-size:1.125rem;height:32px;width:32px}.setting-actions{margin-top:1.5rem;padding-top:1.25rem}.admin-action-button,.save-btn{font-size:.875rem;justify-content:center;padding:.75rem 1.5rem;width:100%}}@media (max-width:480px){.settings-card{border-radius:.375rem;margin:0 .25rem;padding:1rem}.setting-item{padding:.75rem}.setting-item label{font-size:.9375rem}.auto-group-rules{padding:1rem}.auto-group-rules h4{font-size:1rem}.rule-item{padding:.625rem}.rule-item strong{font-size:.875rem}.rule-item span{font-size:.75rem}.admin-action-button,.save-btn{font-size:.8125rem;padding:.625rem 1.25rem}}@media print{.setting-actions{display:none}.settings-card{border:1px solid #000;box-shadow:none}.rule-item{break-inside:avoid;page-break-inside:avoid}.auto-group-rules,.rule-item{border:1px solid #666}.rule-icon{background:#f0f0f0}}.admin-action-button:focus,.save-btn:focus,.setting-item input[type=checkbox]:focus{outline:2px solid #06c;outline-offset:2px}.admin-action-button:disabled,.save-btn:disabled{background:#6c757d;cursor:not-allowed;opacity:.65}.setting-item input[type=number]:disabled,.setting-item select:disabled{background:#e9ecef;color:#6c757d;cursor:not-allowed}@media (prefers-contrast:high){.settings-card{border:2px solid #000}.rule-item{border:2px solid #666}.admin-action-button,.save-btn{border:2px solid #000}}.tm-container{background:#fafbfc;margin:0 auto;max-width:1400px;min-height:100vh;padding:2rem}.tm-header{align-items:flex-start;border-bottom:1px solid #e1e5e9;display:flex;justify-content:space-between;margin-bottom:2rem;padding-bottom:1.5rem}.tm-header-content{flex:1 1}.tm-page-title{color:#1a1a1a;font-size:1.75rem;font-weight:600;letter-spacing:-.025em;margin:0 0 .5rem}.tm-page-subtitle{color:#6b7280;font-size:.9rem;font-weight:400;margin:0}.tm-header-controls{align-items:center;display:flex;gap:1rem}.tm-search-container{position:relative}.tm-search-input{background:#fff;border:1px solid #d1d5db;border-radius:6px;font-size:.875rem;outline:none;padding:.625rem .875rem;transition:all .2s ease;width:260px}.tm-search-input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.tm-btn-refresh{align-items:center;background:#fff;border:1px solid #d1d5db;border-radius:6px;color:#374151;cursor:pointer;display:flex;font-size:.875rem;font-weight:500;gap:.5rem;padding:.625rem 1rem;transition:all .2s ease}.tm-btn-refresh:hover{background:#f9fafb;border-color:#9ca3af}.tm-stats-overview{margin-bottom:1.5rem}.tm-stat-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.tm-stat-card{background:#fff;border:1px solid #e5e7eb;border-radius:10px;padding:1.25rem;text-align:center;transition:all .2s ease}.tm-stat-card:hover{box-shadow:0 3px 10px #0000000d;transform:translateY(-1px)}.tm-stat-card.tm-active{background:linear-gradient(135deg,#ecfdf5,#fff);border-color:#10b981}.tm-stat-card.tm-recruiting{background:linear-gradient(135deg,#fffbeb,#fff);border-color:#f59e0b}.tm-stat-card.tm-inactive{background:linear-gradient(135deg,#f9fafb,#fff);border-color:#6b7280}.tm-stat-number{color:#1f2937;font-size:2rem;font-weight:700;line-height:1;margin-bottom:.25rem}.tm-stat-label{font-size:.8rem;font-weight:500;letter-spacing:.025em;text-transform:uppercase}.tm-teams-grid{grid-gap:1rem;align-items:stretch;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.tm-team-card{background:#fff;border:1px solid #e5e7eb;border-radius:10px;display:flex;flex-direction:column;height:380px;overflow:hidden;position:relative;transition:all .3s ease}.tm-team-card:hover{border-color:#d1d5db;box-shadow:0 6px 20px #00000014;transform:translateY(-2px)}.tm-card-header{align-items:flex-start;border-bottom:1px solid #f3f4f6;display:flex;flex-shrink:0;justify-content:space-between;padding:1rem 1.25rem .75rem}.tm-team-title{flex:1 1;min-width:0}.tm-team-title h3{word-wrap:break-word;color:#1f2937;font-size:.95rem;font-weight:600;-webkit-hyphens:auto;hyphens:auto;line-height:1.3;margin:0 0 .375rem;overflow-wrap:break-word}.tm-status-indicator{border-radius:16px;display:inline-block;flex-shrink:0;font-size:.7rem;font-weight:600;letter-spacing:.025em;padding:.2rem .6rem;text-transform:uppercase;white-space:nowrap}.tm-status-indicator.tm-active{background:#dcfce7;color:#166534}.tm-status-indicator.tm-recruiting{background:#fef3c7;color:#92400e}.tm-status-indicator.tm-inactive{background:#f3f4f6;color:#6b7280}.tm-card-actions{display:flex;flex-shrink:0;gap:.375rem}.tm-btn-icon{align-items:center;border:none;border-radius:5px;cursor:pointer;display:flex;font-size:.8rem;height:28px;justify-content:center;transition:all .2s ease;width:28px}.tm-btn-view{background:#eff6ff;color:#2563eb}.tm-btn-view:hover{background:#dbeafe}.tm-btn-delete{background:#fef2f2;color:#dc2626}.tm-btn-delete:hover{background:#fee2e2}.tm-card-content{display:flex;flex-direction:column;flex-grow:1;gap:.875rem;overflow-y:auto;padding:.875rem 1.25rem}.tm-project-info{flex-shrink:0}.tm-info-item{align-items:flex-start;display:flex;gap:.5rem;margin-bottom:.5rem;width:100%}.tm-info-label{color:#6b7280;flex-shrink:0;font-size:.7rem;font-weight:600;line-height:1.3;text-transform:uppercase;width:70px}.tm-info-value{word-wrap:break-word;color:#374151;flex:1 1;font-size:.75rem;font-weight:500;-webkit-hyphens:auto;hyphens:auto;line-height:1.3;min-width:0;overflow-wrap:break-word}.tm-phase-badge{background:#e0e7ff;border-radius:3px;color:#3730a3;display:inline-block;font-size:.65rem;font-weight:600;padding:.15rem .4rem;white-space:nowrap}.tm-members-preview{border-top:1px solid #f3f4f6;display:flex;flex-direction:column;flex-grow:1;padding-top:.875rem}.tm-members-header{align-items:center;display:flex;flex-shrink:0;justify-content:space-between;margin-bottom:.625rem}.tm-members-count{color:#374151;font-size:.75rem;font-weight:600}.tm-over-capacity{color:#dc2626;font-size:.65rem;font-weight:600}.tm-admin-controls{display:flex;gap:.25rem}.tm-btn-add{background:#22c55e;border-radius:4px;color:#fff;font-size:.7rem;height:24px;width:24px}.tm-btn-add:hover{background:#16a34a}.tm-members-list{display:flex;flex-direction:column;flex-grow:1;gap:.375rem;min-height:0}.tm-member-chip{align-items:center;background:#f9fafb;border-radius:6px;display:flex;gap:.5rem;min-height:36px;padding:.5rem;transition:all .2s ease}.tm-member-chip:hover{background:#f3f4f6;transform:translateY(-1px)}.tm-member-avatar{align-items:center;background:#6366f1;border-radius:50%;box-shadow:0 1px 3px #0000001a;color:#fff;display:flex;flex-shrink:0;font-size:.65rem;font-weight:600;height:22px;justify-content:center;width:22px}.tm-member-name{color:#374151;flex:1 1;font-size:.75rem;font-weight:500;line-height:1.2;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tm-member-role{background:#fff;border:1px solid #e5e7eb;border-radius:6px;color:#6b7280;font-size:.65rem}.tm-eligibility-badge,.tm-member-role{padding:.1rem .3rem;white-space:nowrap}.tm-eligibility-badge{background:#4caf50;border-radius:10px;color:#fff;font-size:.6rem;font-weight:600}.tm-btn-remove-member{align-items:center;background:#ef4444;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;flex-shrink:0;font-size:.6rem;height:18px;justify-content:center;margin-left:auto;width:18px}.tm-btn-remove-member:hover{background:#dc2626}.tm-pending-requests{border-top:1px solid #f3f4f6;flex-shrink:0;margin-top:.625rem;padding-top:.625rem}.tm-requests-indicator{align-items:center;background:#fffbeb;border:1px solid #fed7aa;border-radius:5px;color:#f59e0b;display:flex;font-size:.7rem;font-weight:500;gap:.3rem;padding:.3rem .5rem}.tm-card-footer{align-items:center;background:#f9fafb;border-top:1px solid #f3f4f6;display:flex;flex-shrink:0;justify-content:space-between;padding:.625rem 1.25rem}.tm-creation-date{color:#6b7280;font-size:.65rem;font-weight:500}.tm-btn-manage{background:#3b82f6;border:none;border-radius:5px;color:#fff;cursor:pointer;font-size:.75rem;font-weight:500;padding:.4rem .7rem;transition:all .2s ease;white-space:nowrap}.tm-btn-manage:hover:not(:disabled){background:#2563eb;box-shadow:0 3px 6px #3b82f633;transform:translateY(-1px)}.tm-btn-manage:disabled{box-shadow:none;cursor:not-allowed;opacity:.6;transform:none}.tm-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0009;bottom:0;display:flex;justify-content:center;left:0;padding:1rem;position:fixed;right:0;top:0;z-index:1000}.tm-modal-container{background:#fff;border-radius:10px;box-shadow:0 20px 60px #00000026;display:flex;flex-direction:column;max-height:90vh;max-width:600px;overflow:hidden;width:100%}.tm-modal-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;flex-shrink:0;justify-content:space-between;padding:1.25rem 1.75rem}.tm-modal-title{align-items:center;display:flex;gap:.875rem}.tm-modal-title h2{color:#1f2937;font-size:1.125rem;font-weight:600;margin:0}.tm-btn-close{align-items:center;background:#f3f4f6;border:none;border-radius:5px;color:#6b7280;cursor:pointer;display:flex;height:32px;justify-content:center;transition:all .2s ease;width:32px}.tm-btn-close:hover{background:#e5e7eb;color:#374151}.tm-modal-body{flex-grow:1;min-height:0;overflow-y:auto;padding:1.25rem 1.75rem}.tm-details-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:1fr}.tm-detail-section h3,.tm-members-section h3,.tm-requests-section h3{color:#1f2937;font-size:1rem;font-weight:600;margin:0 0 .875rem}.tm-detail-list{background:#f9fafb;border-radius:6px;overflow:hidden}.tm-detail-row{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;padding:.875rem}.tm-detail-row:last-child{border-bottom:none}.tm-detail-label{color:#6b7280;flex-shrink:0;font-size:.8rem;font-weight:500;width:120px}.tm-detail-value{color:#374151;flex:1 1;font-size:.8rem}.tm-members-detailed-list{grid-gap:.875rem;display:grid;gap:.875rem}.tm-member-card-detailed{align-items:center;background:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;display:flex;gap:.875rem;padding:.875rem}.tm-member-avatar-large{align-items:center;background:#6366f1;border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:.9rem;font-weight:600;height:36px;justify-content:center;width:36px}.tm-member-info-detailed{flex:1 1}.tm-member-name-detailed{color:#1f2937;font-size:.875rem;font-weight:600;margin-bottom:.2rem}.tm-member-email,.tm-member-id{color:#6b7280;font-size:.75rem;margin-bottom:.2rem}.tm-member-role-badge{border-radius:10px;display:inline-block;font-size:.7rem;font-weight:600;padding:.2rem .6rem;text-transform:uppercase}.tm-member-role-badge.tm-leader{background:#fef3c7;color:#92400e}.tm-member-role-badge.tm-member{background:#e0e7ff;color:#3730a3}.tm-requests-list{grid-gap:.875rem;display:grid;gap:.875rem}.tm-request-card{align-items:center;background:#fff7ed;border:1px solid #fed7aa;border-radius:6px;display:flex;justify-content:space-between;padding:.875rem}.tm-request-name{color:#1f2937;font-size:.8rem;font-weight:600;margin-bottom:.2rem}.tm-request-details{color:#6b7280;font-size:.7rem}.tm-request-details span{margin-right:.875rem}.tm-request-date{color:#92400e;font-size:.7rem;font-weight:500}.tm-modal-footer{background:#fff;border-top:1px solid #e5e7eb;display:flex;flex-shrink:0;gap:.875rem;justify-content:flex-end;padding:1.25rem 1.75rem}.tm-form-group{margin-bottom:1.25rem}.tm-form-group label{color:#374151;display:block;font-size:.8rem;font-weight:600;margin-bottom:.4rem}.tm-form-group small{color:#6b7280;display:block;font-size:.75rem;margin-top:.25rem}.tm-form-input,.tm-form-select{background:#fff;border:1px solid #d1d5db;border-radius:5px;color:#374151;font-size:.8rem;padding:.625rem;transition:border-color .2s ease,box-shadow .2s ease;width:100%}.tm-form-input:focus,.tm-form-select:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.tm-btn-secondary{align-items:center;background:#f3f4f6;border:1px solid #d1d5db;border-radius:5px;color:#374151;cursor:pointer;display:inline-flex;font-size:.8rem;font-weight:500;justify-content:center;min-height:40px;padding:.625rem 1.25rem;transition:all .2s ease;white-space:nowrap}.tm-btn-secondary:hover:not(:disabled){background:#e5e7eb;border-color:#9ca3af}.tm-btn-secondary:disabled{cursor:not-allowed;opacity:.6}.tm-eligibility-toggle{background:#f8f9fa;border:1px solid #dee2e6;border-radius:6px;margin-bottom:1rem;padding:1rem}.tm-eligibility-toggle label{align-items:center;cursor:pointer;display:flex;font-weight:600;margin-bottom:.25rem}.tm-eligibility-toggle input[type=checkbox]{margin-right:.5rem}.tm-eligibility-toggle small{color:#666;font-size:.75rem}.tm-student-info{margin-top:.875rem}.tm-student-details{border:1px solid #e2e8f0;border-radius:6px;margin-top:.875rem;padding:.875rem}.tm-student-details.tm-eligible{background:#e8f5e8;border-color:#4caf50}.tm-student-details.tm-ineligible{background:#fff3cd;border-color:#ffc107}.tm-student-details p{font-size:.8rem;margin:.4rem 0}.tm-student-details strong{color:#1f2937;font-weight:600}.tm-warning-box{background:#fff;border:1px solid #ff9800;border-radius:4px;font-size:.75rem;margin-top:.5rem;padding:.5rem}.tm-warning{background:#fffbeb;border-left:3px solid #f59e0b;border-radius:3px;color:#f59e0b;font-weight:600;padding:.4rem}.tm-no-students-notice{background:#f9fafb;border-radius:6px;color:#6b7280;margin:.875rem 0;padding:1.5rem .875rem;text-align:center}.tm-no-students-notice p{font-size:.8rem;margin:.4rem 0}.tm-no-students-notice small{font-size:.75rem}@media (max-width:768px){.tm-container{padding:1rem}.tm-header{flex-direction:column;gap:1rem;margin-bottom:1.5rem}.tm-page-title{font-size:1.5rem}.tm-header-controls{flex-direction:column;gap:.75rem;width:100%}.tm-search-input{width:100%}.tm-teams-grid{grid-template-columns:1fr}.tm-team-card{height:auto;min-height:340px}.tm-stat-grid{gap:.875rem;grid-template-columns:repeat(2,1fr)}.tm-stat-card{padding:1rem}.tm-stat-number{font-size:1.75rem}.tm-modal-overlay{padding:.875rem}.tm-modal-body{padding:1rem}.tm-modal-footer,.tm-modal-header{padding:1rem 1.25rem}}@media (max-width:480px){.tm-container{padding:.875rem}.tm-stat-grid{gap:.75rem;grid-template-columns:1fr}.tm-card-header{align-items:flex-start;flex-direction:column;gap:.625rem;padding:.875rem 1rem .625rem}.tm-card-content{padding:.75rem 1rem}.tm-card-footer{padding:.5rem 1rem}.tm-card-actions{justify-content:flex-end;width:100%}.tm-team-title h3{font-size:.875rem}.tm-info-label{font-size:.65rem;width:60px}.tm-info-value,.tm-member-name,.tm-members-count{font-size:.7rem}.tm-member-role{font-size:.6rem}.tm-member-avatar{font-size:.6rem;height:20px;width:20px}.tm-member-avatar-large{font-size:.8rem;height:32px;width:32px}.tm-btn-remove-member{font-size:.55rem;height:16px;width:16px}.tm-phase-badge{font-size:.6rem;padding:.1rem .3rem}.tm-creation-date{font-size:.6rem}.tm-btn-manage{font-size:.7rem;padding:.35rem .6rem}}.tm-teams-grid:empty:after{color:#6b7280;content:"No teams found";font-size:.875rem;grid-column:1/-1;padding:2rem;text-align:center}.mobile-menu-toggle{background:#2c3e50;background:var(--primary-color);border-radius:8px;box-shadow:0 4px 12px #00000026;font-size:1.2rem;height:48px;left:1rem;top:1rem;width:48px;z-index:1001}.mobile-menu-toggle:hover{background-color:#1a252f;background-color:var(--primary-color-dark);box-shadow:0 6px 16px #0003;transform:translateY(-2px)}.mobile-menu-toggle:active{box-shadow:0 2px 8px #00000026;transform:translateY(0)}.sidebar-backdrop{background:#0009;bottom:0;display:none;left:0;opacity:0;position:fixed;right:0;top:0;transition:opacity .3s ease;z-index:99}.sidebar-backdrop.active{display:block;opacity:1}.admin-sidebar{background:linear-gradient(135deg,#2c3e50,#1a252f);background:linear-gradient(135deg,var(--primary-color),var(--primary-color-dark));box-shadow:0 2px 12px #00000026;box-shadow:var(--box-shadow-sidebar);color:#ffffffd9;color:var(--sidebar-text-color);display:flex;flex-direction:column;height:100vh;left:0;overflow-x:hidden;overflow-y:auto;padding:0;position:fixed;top:0;transition:all .3s cubic-bezier(.4,0,.2,1);transition:all var(--transition-standard);width:260px;width:var(--sidebar-width);z-index:100}.admin-sidebar.collapsed{width:70px;width:var(--sidebar-collapsed-width)}@media (max-width:768px){.mobile-menu-toggle{display:flex}.admin-sidebar{box-shadow:none;transform:translateX(-100%);transition:transform .3s ease,box-shadow .3s ease;width:260px;width:var(--sidebar-width)}.admin-sidebar.mobile-open{box-shadow:0 2px 12px #00000026;box-shadow:var(--box-shadow-sidebar);transform:translateX(0)}.admin-content{margin-left:0!important;margin-top:70px;padding:1rem;transition:none;width:100%!important}.admin-sidebar .collapse-toggle{display:none}body.sidebar-active-mobile{overflow:hidden}.admin-title{border-bottom:1px solid #ffffff1a;height:70px;padding:0 1.5rem}.admin-menu{padding:1.5rem 0}.admin-menu a,.admin-menu button{font-size:1rem;margin:.25rem 0;padding:1rem 1.5rem}.admin-menu .menu-icon{height:22px;width:22px}.management-header{align-items:stretch;flex-direction:column;gap:1rem;margin-bottom:1.5rem}.management-header h2{font-size:1.5rem;margin-bottom:.5rem}.controls{gap:1rem}.controls,.search-filter-group{flex-direction:column;width:100%}.search-filter-group{gap:.75rem}.filter-select,.search-input{min-width:100%;width:100%}.action-group{flex-direction:column;gap:.75rem;width:100%}.admin-action-button{justify-content:center;padding:.75rem 1rem;width:100%}.bulk-action-container{flex-direction:column;gap:.75rem;width:100%}.bulk-action-group{background:#0000;border:none;border-radius:8px;box-shadow:none;flex-direction:column;gap:.75rem;overflow:visible}.bulk-select-wrapper{background:#fff;border:1px solid #e0e0e0;border:1px solid var(--border-color);border-radius:8px}.bulk-action-select{min-width:100%;width:100%}.bulk-delete-button{border-radius:8px;justify-content:center;width:100%}.table-container{border-left:none;border-radius:0;border-right:none;margin:0 -1rem 1.5rem;overflow-x:auto;width:calc(100% + 2rem)}.data-table{min-width:800px}.data-table td,.data-table th{font-size:.875rem;padding:.75rem .5rem}.form-grid,.profile-grid{gap:1rem;grid-template-columns:1fr}.admin-form-group input,.admin-form-group select,.admin-form-group textarea{font-size:16px}.admin-modal-overlay{padding:1rem}.modal{border-radius:12px 12px 0 0;margin:0;max-height:90vh;width:100%}.modal,.modal.profile-modal{max-width:100%}.stat-grid{gap:1rem;grid-template-columns:repeat(2,1fr)}.teams-grid{gap:1rem;grid-template-columns:1fr}.teams-header{align-items:stretch;flex-direction:column;gap:1rem}.header-controls{flex-direction:column;gap:.75rem;width:100%}.search-input-minimal{width:100%}.team-card-minimal{height:auto;min-height:350px}.card-header{align-items:stretch;flex-direction:column;gap:.75rem}.card-actions{align-self:flex-end}.info-item{align-items:flex-start;flex-direction:column;gap:.25rem}.info-label{font-size:.7rem;margin-right:0;width:auto}.info-value{font-size:.8rem;margin-left:0}}@media (max-width:480px){.mobile-menu-toggle{font-size:1.1rem;height:44px;left:.75rem;top:.75rem;width:44px}.admin-content{margin-top:65px;padding:.75rem}.content-box{padding:1rem}.management-header h2{font-size:1.25rem}.admin-action-button{font-size:.875rem;padding:.625rem 1rem}.stat-grid{grid-template-columns:1fr}.data-table td,.data-table th{font-size:.8rem;padding:.5rem .25rem}.data-table td:nth-child(n+6),.data-table th:nth-child(n+6){display:none}.data-table td:last-child,.data-table th:last-child{display:table-cell}}@media (max-width:768px) and (orientation:landscape){.admin-content{margin-top:60px}.mobile-menu-toggle{height:40px;left:.5rem;top:.5rem;width:40px}.admin-title{height:60px}}@media (hover:none) and (pointer:coarse){.admin-action-button,.btn-manage,.icon-button,.mobile-menu-toggle{min-height:44px;min-width:44px}.admin-menu a,.admin-menu button{min-height:48px;padding:.75rem 1.5rem}.card-actions .btn-icon{font-size:.9rem;height:40px;width:40px}}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){.admin-sidebar{-moz-osx-font-smoothing:grayscale}.admin-sidebar,.mobile-menu-toggle{-webkit-font-smoothing:antialiased}}@media print{.admin-sidebar,.mobile-menu-toggle,.sidebar-backdrop{display:none!important}.admin-content{margin-left:0!important;padding:0;width:100%!important}.admin-action-button,.icon-button{display:none}}.action-btn{background:#0000;border:1px solid #0000;display:inline-flex;font-size:.875rem;font-weight:500;min-height:36px;min-width:36px;outline:none;overflow:hidden;padding:.5rem .75rem;position:relative;transition:all .2s cubic-bezier(.4,0,.2,1);vertical-align:middle}.action-btn:focus{outline:2px solid #3b82f6;outline-offset:2px}.action-btn:disabled{cursor:not-allowed;opacity:.6;transform:none}.edit-btn,.edit-btn:hover:not(:disabled){background-color:#f8fafc;border-color:#e2e8f0;color:#1f2937}.edit-btn:hover:not(:disabled){box-shadow:0 6px 16px #0000001a;transform:translateY(-2px)}.edit-btn:active:not(:disabled){box-shadow:0 2px 8px #00000026;transform:translateY(0)}.edit-btn .menu-icon{color:#6b7280;transition:transform .2s ease}.edit-btn:hover:not(:disabled) .menu-icon{color:#6b7280;transform:scale(1.1)}.delete-btn,.delete-btn:hover:not(:disabled){background-color:#fef2f2;border-color:#fecaca;color:#dc2626}.delete-btn:hover:not(:disabled){box-shadow:0 6px 16px #dc262626;transform:translateY(-2px)}.delete-btn:active:not(:disabled){box-shadow:0 2px 8px #dc262633;transform:translateY(0)}.delete-btn .menu-icon{color:#dc2626;transition:transform .2s ease}.delete-btn:hover:not(:disabled) .menu-icon{color:#dc2626;transform:scale(1.1) rotate(5deg)}.button-text-label{font-size:.875rem;font-weight:500;margin-left:.25rem;transition:all .2s ease}.action-btn:hover:not(:disabled) .button-text-label{transform:translateX(1px)}.action-btn .menu-icon{flex-shrink:0;height:16px;transition:all .2s ease;width:16px}.actions-cell{gap:.5rem;height:auto;justify-content:center;min-width:120px;padding:.75rem 1rem;vertical-align:middle;white-space:nowrap}.data-table tbody tr{height:auto;min-height:60px}.data-table tbody td{border-bottom:1px solid #e5e7eb;padding:.75rem 1rem;vertical-align:middle}.actions-cell.single-action{align-items:center;display:flex;justify-content:center;min-width:100px}.actions-cell.single-action .action-btn{flex-shrink:0;margin:0}.data-table .actions-cell{text-align:center;vertical-align:middle}.data-table .actions-cell .action-btn{display:inline-flex;vertical-align:middle}.action-btn.compact{border-radius:4px;font-size:.8125rem;min-height:32px;min-width:32px;padding:.375rem .625rem}.action-btn.compact .menu-icon{height:14px;width:14px}.action-btn.compact .button-text-label{font-size:.8125rem;margin-left:.2rem}.action-btn.rounded{border-radius:20px;padding:.5rem 1rem}.action-btn.ghost{background:#0000;border:1px solid #0000}.action-btn.ghost.edit-btn:hover:not(:disabled){background:#0000;border-color:#0000;box-shadow:0 4px 12px #00000014;transform:translateY(-2px)}.action-btn.ghost.delete-btn:hover:not(:disabled){background:#0000;border-color:#0000;box-shadow:0 4px 12px #dc26261a;transform:translateY(-2px)}.action-btn.loading{color:#0000;cursor:not-allowed;position:relative}.action-btn.loading:after{animation:button-spin 1s linear infinite;border:2px solid #e5e7eb;border-radius:50%;border-top-color:currentcolor;content:"";height:16px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:16px}@keyframes button-spin{0%{transform:translate(-50%,-50%) rotate(0deg)}to{transform:translate(-50%,-50%) rotate(1turn)}}.action-btn.success{background-color:#dcfce7;border-color:#bbf7d0;color:#166534}.action-btn.success .menu-icon{color:#166534}.action-btn.success:hover:not(:disabled){background-color:#dcfce7;border-color:#bbf7d0;box-shadow:0 6px 16px #16653426;color:#166534;transform:translateY(-2px)}.action-btn.pulse{animation:gentle-pulse 2s infinite}@keyframes gentle-pulse{0%,to{box-shadow:0 2px 4px #0000001a;transform:scale(1)}50%{box-shadow:0 4px 8px #00000026;transform:scale(1.02)}}.action-btn.glow:hover:not(:disabled){box-shadow:0 6px 16px #0000001a,0 0 0 1px #ffffff1a,inset 0 1px 0 #fff3}.data-table td,.data-table th{vertical-align:middle}.checkbox-cell,.data-table td:last-child,.data-table th:last-child{text-align:center}.checkbox-cell{padding:.75rem .5rem;vertical-align:middle;width:40px}.checkbox-cell input[type=checkbox]{margin:0;vertical-align:middle}.program-badge,.status-badge{display:inline-flex;justify-content:center;vertical-align:middle}.program-badge{align-items:center}@media (max-width:768px){.actions-cell{gap:.375rem;min-width:90px;padding:.5rem}.actions-cell.single-action{min-width:70px}.action-btn{font-size:.8125rem;min-height:32px;padding:.4375rem .625rem}.action-btn .menu-icon{height:15px;width:15px}.action-btn:hover:not(:disabled){transform:translateY(-1px)}.data-table tbody tr{min-height:50px}}@media (max-width:600px){.action-btn .button-text-label{display:none}.action-btn{justify-content:center;min-height:36px;min-width:36px;padding:.5rem}.action-btn .menu-icon{margin:0}.actions-cell{justify-content:center;min-width:60px;padding:.5rem}.actions-cell.single-action{min-width:50px}.action-btn:hover:not(:disabled){transform:scale(1.05)}.data-table tbody tr{min-height:45px}.data-table tbody td{padding:.5rem .75rem}}@media (max-width:480px){.action-btn{min-height:32px;min-width:32px;padding:.375rem}.action-btn .menu-icon{height:14px;width:14px}.actions-cell{gap:.25rem;min-width:45px;padding:.375rem}.actions-cell.single-action{min-width:40px}}@media (hover:none) and (pointer:coarse){.action-btn{min-height:44px;min-width:44px;padding:.625rem}.action-btn.compact{min-height:40px;min-width:40px}.action-btn:hover:not(:disabled){box-shadow:0 2px 4px #0000001a;transform:none}.action-btn:active:not(:disabled){box-shadow:0 1px 2px #0003;transform:scale(.95)}}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){.action-btn{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}}@media (prefers-color-scheme:dark){.edit-btn,.edit-btn:hover:not(:disabled){background-color:#1f2937;border-color:#374151;color:#f9fafb}.delete-btn,.delete-btn:hover:not(:disabled){background-color:#1f2937;border-color:#374151;color:#ef4444}.edit-btn .menu-icon{color:#9ca3af}.delete-btn .menu-icon{color:#ef4444}}@media (prefers-contrast:high){.action-btn{border-width:2px;font-weight:600}.edit-btn{border-color:#1e40af}.delete-btn{border-color:#dc2626}}@media (prefers-reduced-motion:reduce){.action-btn{transition:none}.action-btn:hover:not(:disabled){transform:none}.action-btn .menu-icon,.button-text-label{transition:none}.action-btn.pulse{animation:none}}@media print{.action-btn,.actions-cell{display:none}}.action-btn:focus-visible{box-shadow:0 0 0 4px #3b82f61a;outline:2px solid #3b82f6;outline-offset:2px}@media screen and (-ms-high-contrast:active){.action-btn{border:2px solid ButtonText}.action-btn:hover:not(:disabled){border:2px solid Highlight}}.student-content-box{background:#fff;border-radius:12px;box-shadow:0 4px 8px #0000001a;box-shadow:var(--box-shadow-medium);margin-bottom:2rem;padding:2rem}.student-management-header{gap:1.5rem;justify-content:space-between;margin-bottom:2rem}.student-controls,.student-management-header{align-items:center;display:flex;flex-wrap:wrap}.student-controls{flex-grow:1;gap:1rem}.student-action-group{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem}.student-action-button{align-items:center;background-color:#e0e0e0;background-color:var(--border-color);border:none;border-radius:8px;color:#2d3436;color:var(--text-color);cursor:pointer;display:inline-flex;font-size:.95rem;font-weight:500;gap:.5rem;justify-content:center;line-height:1.5;padding:.75rem 1.25rem;text-decoration:none;transition:all .2s ease}.student-action-button.student-action-primary{background-color:#3498db;background-color:var(--secondary-color);color:#fff}.student-action-button.student-action-primary:hover:not(:disabled){background:#2980b9;background:var(--secondary-color-hover)}.student-action-button.student-danger-btn{background-color:#e74c3c;background-color:var(--danger-color);color:#fff}.student-action-button.student-danger-btn:hover:not(:disabled){background:#c0392b}.student-action-button.student-export-btn{background-color:#27ae60;background-color:var(--success-color);color:#fff}.student-action-button.student-export-btn:hover:not(:disabled){background:#219a52}.student-action-button.student-cancel-btn{background:#6c757d;color:#fff}.student-action-button.student-cancel-btn:hover:not(:disabled){background:#5a6268}.student-action-button:hover:not(:disabled){opacity:.9;transform:translateY(-1px)}.student-action-button:active:not(:disabled){opacity:1;transform:translateY(0)}.student-action-button:disabled{cursor:not-allowed;opacity:.6}.student-search-filter-group{display:flex;flex-grow:1;flex-wrap:wrap;gap:.75rem}.student-search-input{border:1px solid #e0e0e0;border:1px solid var(--border-color);border-radius:8px;font-size:.95rem;min-width:280px;padding:.75rem 1rem;transition:border-color .2s,box-shadow .2s}.student-search-input:focus{border-color:#3498db;border-color:var(--secondary-color);box-shadow:0 0 0 3px #3498db1a}.student-filter-select{background-color:#fff;border:1px solid #e0e0e0;border:1px solid var(--border-color);border-radius:6px;box-sizing:border-box;font-size:.9rem;height:calc(3rem + 2px);min-width:160px;padding:.75rem 1rem}.student-bulk-action-container{align-items:center;display:flex;flex-wrap:wrap;gap:10px;margin:1rem 0}.student-bulk-action-group{background:#fff;border:1px solid #e0e0e0;border:1px solid var(--border-color);border-radius:8px;box-shadow:0 2px 6px #0000001a;display:inline-flex;overflow:hidden}.student-bulk-select-wrapper{border-right:1px solid #e0e0e0;border-right:1px solid var(--border-color);position:relative}.student-bulk-action-select{appearance:none;-webkit-appearance:none;-moz-appearance:none;background:#0000;border:none;box-sizing:border-box;color:#2d3436;color:var(--text-color);cursor:pointer;font-size:.95rem;height:100%;min-width:180px;padding:.75rem 2.5rem .75rem 1.25rem}.student-bulk-action-select:disabled{background-color:#f9f9f9;background-color:var(--background-light);color:#999;cursor:not-allowed}.student-custom-arrow{border-left:5px solid #0000;border-right:5px solid #0000;border-top:5px solid #666;height:0;pointer-events:none;position:absolute;right:1rem;top:50%;transform:translateY(-50%);width:0}.student-bulk-delete-button{align-items:center;background-color:#e74c3c;background-color:var(--danger-color);border:none;color:#fff;cursor:pointer;display:inline-flex;font-size:.95rem;font-weight:500;gap:.75rem;padding:.75rem 1.5rem;transition:all .2s ease}.student-bulk-delete-button:hover:not(:disabled){background-color:#c0392b}.student-bulk-delete-button:disabled{background-color:#bdc3c7;cursor:not-allowed;opacity:.7}.student-badge{background:#fff3;border-radius:10px;color:#fff;font-size:.75em;font-weight:600;line-height:1.2;min-width:18px;padding:.15rem .5rem;text-align:center}.student-table-container{-webkit-overflow-scrolling:touch;border:1px solid #e0e0e0;border:1px solid var(--border-color);border-radius:8px;box-shadow:0 2px 4px #0000000d;box-shadow:var(--box-shadow-light);margin-bottom:2rem;max-height:65vh;overflow-x:auto;overflow-y:auto;position:relative}.student-data-table{border-collapse:initial;border-spacing:0;width:100%}.student-data-table thead{background-color:#f9f9f9;background-color:var(--background-light);box-shadow:0 2px 8px #0000001a;position:sticky;top:0;z-index:2}.student-data-table td,.student-data-table th{border-bottom:1px solid #e0e0e0;border-bottom:1px solid var(--border-color);padding:1rem;text-align:left;vertical-align:middle}.student-data-table th{background-color:initial;cursor:pointer;font-weight:600;position:relative;-webkit-user-select:none;user-select:none;white-space:nowrap;z-index:2}.student-data-table tr:hover{background-color:#f5f7fa80;transition:background-color .2s ease}.student-data-table tr.student-clickable-row{cursor:pointer}.student-data-table tr.student-clickable-row.student-status-inactive{opacity:.7}.student-checkbox-cell{text-align:center;width:40px}.student-sort-arrow{color:#3498db;color:var(--secondary-color);display:inline-block;font-size:.8rem;margin-left:5px}.student-id-cell{color:#555;font-family:monospace;font-weight:700}.student-program-badge{background:#e3f2fd;border-radius:6px;color:#1565c0;display:inline-block;font-size:.85rem;padding:.25rem .75rem}.student-status-badge{border-radius:12px;display:inline-block;font-size:.8rem;font-weight:500;line-height:1.2;padding:4px 10px}.student-status-badge.student-status-active{background-color:#4caf50;color:#fff}.student-status-badge.student-status-inactive{background-color:#f44336;color:#fff}.student-status-badge.student-status-probation{background-color:#ffc107;color:#000}.student-status-badge.student-status-graduated{background-color:#9c27b0;color:#fff}.student-actions-cell{white-space:nowrap}.student-icon-button{align-items:center;background:none;border:1px solid #e0e0e0;border:1px solid var(--border-color);border-radius:6px;cursor:pointer;display:inline-flex;font-size:.875rem;gap:.25rem;justify-content:center;margin-right:.5rem;padding:.5rem;transition:all .2s ease}.student-icon-button:hover:not(:disabled){background:#f9f9f9;background:var(--background-light)}.student-icon-button.student-edit-btn{border-color:#3498db;border-color:var(--secondary-color);color:#3498db;color:var(--secondary-color)}.student-icon-button.student-edit-btn:hover{background:#3498db1a}.student-icon-button.student-delete-btn{border-color:#e74c3c;border-color:var(--danger-color);color:#e74c3c;color:var(--danger-color)}.student-icon-button.student-delete-btn:hover{background:#e74c3c1a}.student-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0006;bottom:0;display:flex;justify-content:center;left:0;padding:1rem;position:fixed;right:0;top:0;z-index:1000}.student-modal{animation:modalEnter .3s ease forwards;background:#fff;border-radius:12px;box-shadow:0 8px 24px #00000026;max-height:90vh;max-width:500px;overflow-y:auto;padding:2rem;width:90%;will-change:transform,opacity}.student-modal.student-profile-modal{max-width:600px}.student-modal.student-confirmation-modal{max-width:400px;text-align:center}.student-modal-actions{display:flex;gap:1rem;justify-content:center;margin-top:2rem}.student-form-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin:1.5rem 0}.student-form-group{margin-bottom:1.5rem}.student-form-group label{color:#2c3e50;color:var(--primary-color);display:block;font-weight:500;margin-bottom:.5rem}.student-form-input,.student-form-select{border:1px solid #e0e0e0;border:1px solid var(--border-color);border-radius:6px;box-sizing:border-box;font-size:1rem;padding:.75rem;transition:border-color .2s,box-shadow .2s;width:100%}.student-form-input:focus,.student-form-select:focus{border-color:#3498db;border-color:var(--secondary-color);box-shadow:0 0 0 3px #3498db1a;outline:none}.student-form-input.student-form-error{border-color:#e74c3c;border-color:var(--danger-color);box-shadow:0 0 0 3px #e74c3c1a}.student-error-message{color:#e74c3c;color:var(--danger-color);font-size:.875rem;margin-top:.5rem}.student-form-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem}.student-profile-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.student-detail-card{background:#f9f9f9;background:var(--background-light);border-radius:8px;padding:1.5rem}.student-detail-item{align-items:center;border-bottom:1px dashed #0000000d;display:flex;justify-content:space-between;margin:.75rem 0;padding-bottom:.5rem}.student-detail-item:last-child{border-bottom:none;padding-bottom:0}.student-label{color:#636e72;font-size:.9em;font-weight:500;margin-right:1rem}.student-value{color:#2d3436;font-weight:500;text-align:right;word-break:break-word}.student-profile-actions{display:flex;gap:1rem;justify-content:center;margin-top:2rem}.student-import-results-modal{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.student-modal-content{background:#fff;border-radius:8px;max-height:80vh;max-width:600px;overflow-y:auto;padding:2rem}.student-import-summary{margin:1rem 0}.student-import-stats{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin:1rem 0}.student-stat-label{color:#6b7280;font-size:.875rem;margin-bottom:.5rem}.student-stat-value{color:#2d3436;color:var(--text-color);font-size:1.5rem;font-weight:600}.student-stat-value.student-stat-success{color:#27ae60;color:var(--success-color)}.student-stat-value.student-stat-error{color:#e74c3c;color:var(--danger-color)}.student-import-errors{color:#dc3545;margin-top:1rem}.student-import-errors ul{list-style:none;padding-left:0}.student-scroll-container{background:#f9f9f9;background:var(--background-light);border:1px solid #e0e0e0;border:1px solid var(--border-color);border-radius:4px;max-height:200px;overflow-y:auto;padding:.5rem}@media (max-width:768px){.student-management-header{align-items:flex-start;flex-direction:column;gap:1rem}.student-search-input{min-width:auto;width:100%}.student-controls,.student-search-filter-group{width:100%}.student-filter-select{flex-grow:1;min-width:120px}.student-action-group{justify-content:space-between;width:100%}.student-bulk-action-group{flex-grow:1}.student-table-container{border-left:none;border-radius:0;border-right:none;margin:0 -1rem 1.5rem;width:calc(100% + 2rem)}.student-data-table td,.student-data-table th{padding:.75rem 1rem}.student-form-grid,.student-profile-grid{grid-template-columns:1fr}}@media (max-width:480px){.student-data-table td,.student-data-table th{font-size:.8rem;padding:.5rem .25rem}.student-modal{padding:1rem}.student-form-group label{font-size:.9rem}.student-form-input,.student-form-select{font-size:.9rem;padding:.6rem}}.admin-action-button.danger{background-color:#dc3545;border:1px solid #dc3545;color:#fff}.admin-action-button.danger:hover{background-color:#c82333;border-color:#bd2130}.confirmation-modal{max-width:400px}.confirmation-modal p{color:#666;margin:1rem 0;text-align:center}.error-message-modal{background:#fee2e2;border:1px solid #fca5a5;border-radius:6px;color:#dc2626;font-size:.875rem;font-weight:500;margin-bottom:1rem;padding:.75rem}.admin-form-group label{color:#374151;display:block;font-size:.875rem;font-weight:600;margin-bottom:.5rem}.admin-form-group label:after{content:""}.admin-form-group label[for]:after{color:#dc2626;content:" *"}.notification-badge-admin{align-items:center;animation:pulse 2s infinite;background-color:#dc3545;border-radius:50%;color:#fff;display:flex;font-size:10px;font-weight:700;height:18px;justify-content:center;min-width:18px;padding:2px 6px;position:absolute;right:30px;top:18px}.admin-menu li button{position:relative}.problems-container{margin:0 auto;max-width:1200px;padding:20px}.problems-header{align-items:flex-start;display:flex;gap:20px;justify-content:space-between;margin-bottom:24px}.problems-header-content h1{color:#2c3e50;font-size:28px;font-weight:600;margin:0 0 8px}.problems-header-content p{color:#6c757d;font-size:16px;margin:0}.problems-header-controls{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.problems-search-input{padding:8px 16px;width:250px}.problems-filter-select,.problems-search-input{border:1px solid #ddd;border-radius:6px;font-size:14px}.problems-filter-select{background:#fff;padding:8px 12px}.problems-btn-refresh{align-items:center;background:#007bff;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:14px;gap:8px;padding:8px 16px;transition:background-color .2s}.problems-btn-refresh:hover{background:#0056b3}.problems-stats-overview{margin-bottom:24px}.problems-stat-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.problems-stat-card{background:#fff;border-left:4px solid #007bff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:20px;text-align:center}.problems-stat-card.problems-pending{border-left-color:#ffc107}.problems-stat-card.problems-in-progress{border-left-color:#17a2b8}.problems-stat-card.problems-resolved{border-left-color:#28a745}.problems-stat-number{color:#2c3e50;font-size:32px;font-weight:700;margin-bottom:4px}.problems-stat-label{color:#6c757d;font-size:14px;font-weight:500}.problems-card{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:16px;transition:box-shadow .2s}.problems-card:hover{box-shadow:0 4px 8px #00000026}.problems-card-header{align-items:flex-start;border-bottom:1px solid #f1f3f4;display:flex;justify-content:space-between;padding:16px 20px}.problems-priority-indicator{display:flex;gap:8px;margin-bottom:8px}.problems-priority-badge{border-radius:12px;font-size:11px;font-weight:600;padding:2px 8px;text-transform:uppercase}.problems-priority-badge.problems-high{background:#ffebee;color:#c62828}.problems-priority-badge.problems-medium{background:#fff3e0;color:#ef6c00}.problems-priority-badge.problems-low{background:#e8f5e8;color:#2e7d32}.problems-type-badge{background:#e3f2fd;border-radius:12px;color:#1565c0;font-size:11px;font-weight:600;padding:2px 8px}.problems-card-title{color:#2c3e50;font-size:16px;font-weight:600;margin:0}.problems-status-indicator{border-radius:16px;font-size:12px;font-weight:600;padding:4px 12px;text-transform:capitalize}.problems-status-indicator.problems-pending{background:#fff3cd;color:#856404}.problems-status-indicator.problems-in-progress{background:#d1ecf1;color:#0c5460}.problems-status-indicator.problems-resolved{background:#d4edda;color:#155724}.problems-card-content{padding:16px 20px}.problems-student-info{align-items:center;display:flex;gap:12px;margin-bottom:16px}.problems-student-avatar{align-items:center;background:#007bff;border-radius:50%;color:#fff;display:flex;font-size:16px;font-weight:700;height:40px;justify-content:center;width:40px}.problems-student-name{color:#2c3e50;font-weight:600}.problems-student-id,.problems-student-program{color:#6c757d;font-size:12px}.problems-description-preview p{color:#495057;line-height:1.5;margin:0}.problems-meta-info{display:flex;gap:16px;margin-top:16px}.problems-meta-item{align-items:center;color:#6c757d;display:flex;font-size:12px;gap:6px}.problems-card-footer{background:#f8f9fa;border-radius:0 0 8px 8px;padding:16px 20px}.problems-quick-actions{display:flex;gap:8px}.problems-btn-quick{border-radius:4px;font-size:12px;padding:6px 12px;transition:all .2s}.problems-btn-start{background:#17a2b8}.problems-btn-resolve{background:#28a745}.problems-btn-respond{background:#6c757d}.problems-btn-quick:hover{box-shadow:0 2px 4px #0000001a;transform:translateY(-1px)}.problems-modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.problems-modal-container{background:#fff;border-radius:8px;box-shadow:0 10px 30px #0000004d;max-height:90vh;max-width:800px;overflow-y:auto;width:90%}.problems-modal-header{align-items:flex-start;border-bottom:1px solid #f1f3f4;display:flex;justify-content:space-between;padding:20px}.problems-modal-title h2{color:#2c3e50;font-size:20px;margin:0 0 8px}.problems-modal-badges{display:flex;gap:8px}.problems-btn-close{background:none;border:none;color:#6c757d;cursor:pointer;font-size:20px;padding:4px}.problems-modal-body{padding:20px}.problems-detail-section h3,.problems-detail-section h4{color:#2c3e50;margin:0 0 16px}.problems-detail-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:24px}.problems-detail-item{display:flex;flex-direction:column;gap:4px}.problems-detail-label{color:#495057;font-size:14px;font-weight:600}.problems-detail-value{color:#2c3e50}.problems-description-content{background:#f8f9fa;border-left:4px solid #007bff;border-radius:6px;color:#495057;line-height:1.6;padding:16px}.problems-responses-section{margin-top:24px}.problems-response-item{background:#f8f9fa;border-radius:6px;margin-bottom:12px;padding:12px}.problems-response-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.problems-response-author{color:#007bff;font-size:14px;font-weight:600}.problems-response-date{color:#6c757d;font-size:12px}.problems-response-content{color:#495057;line-height:1.5}.problems-status-buttons{display:flex;gap:12px}.problems-status-btn{background:#fff;border:2px solid #ddd;border-radius:6px;cursor:pointer;padding:8px 16px;transition:all .2s}.problems-status-btn.active{background:#007bff;border-color:#007bff;color:#fff}.problems-modal-footer{border-top:1px solid #f1f3f4;display:flex;gap:12px;justify-content:flex-end;padding:20px}.problems-btn-primary,.problems-btn-secondary{border:none;border-radius:6px;cursor:pointer;font-weight:500;padding:8px 20px;transition:all .2s}.problems-btn-primary{background:#007bff;color:#fff}.problems-btn-secondary{background:#6c757d;color:#fff}.problems-btn-primary:hover{background:#0056b3}.problems-btn-secondary:hover{background:#545b62}.problems-response-textarea{font-family:inherit;min-height:120px;padding:12px;resize:vertical}.problems-response-status-select,.problems-response-textarea{border:1px solid #ddd;border-radius:6px;font-size:14px;width:100%}.problems-response-status-select{padding:8px}.problems-form-group{margin-bottom:20px}.problems-form-group label{color:#495057;display:block;font-weight:600;margin-bottom:8px}.problems-empty-state{color:#6c757d;padding:60px 20px;text-align:center}.problems-empty-icon{color:#28a745;font-size:48px;margin-bottom:16px}.problems-empty-state h3{color:#2c3e50;margin:0 0 8px}@media (max-width:768px){.problems-header{align-items:stretch;flex-direction:column}.problems-header-controls{justify-content:stretch}.problems-search-input{width:100%}.problems-stat-grid{grid-template-columns:1fr}.problems-card-header{flex-direction:column;gap:16px}.problems-modal-container{margin:10px;width:95%}.problems-detail-grid{grid-template-columns:1fr}}.problems-stat-card.clickable{cursor:pointer;overflow:hidden;position:relative;transition:all .3s ease}.problems-stat-card.clickable:hover{box-shadow:0 8px 25px #00000026;transform:translateY(-2px)}.problems-stat-card.clickable.active{background:linear-gradient(135deg,#3b82f6,#1d4ed8);border:2px solid #3b82f6;color:#fff}.problems-stat-card.clickable.active .problems-stat-label,.problems-stat-card.clickable.active .problems-stat-number{color:#fff}.problems-stat-icon{font-size:24px;opacity:.3;position:absolute;right:15px;top:15px;transition:all .3s ease}.problems-stat-card.clickable:hover .problems-stat-icon{opacity:.6;transform:scale(1.1)}.problems-stat-card.active .problems-stat-icon{color:#fff;opacity:.8}.problems-filter-indicator{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;display:flex;justify-content:space-between;margin:20px 0;padding:12px 20px}.filter-text{color:#4a5568;font-size:14px}.clear-filter-btn{background:#ef4444;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:12px;padding:6px 12px;transition:background .2s ease}.clear-filter-btn:hover{background:#dc2626}.problems-card.status-updated{animation:statusUpdate 2s ease;border:2px solid #10b981}@keyframes statusUpdate{0%{background-color:#ecfdf5}50%{background-color:#d1fae5}to{background-color:#fff}}.problems-btn-quick{align-items:center;border:none;border-radius:6px;cursor:pointer;display:flex;font-size:13px;font-weight:500;gap:6px;padding:8px 14px;transition:all .2s ease}.problems-btn-start{background:#f59e0b;color:#fff}.problems-btn-start:hover{background:#d97706}.problems-btn-resolve{background:#10b981;color:#fff}.problems-btn-resolve:hover{background:#059669}.problems-btn-respond{background:#3b82f6;color:#fff}.problems-btn-respond:hover{background:#2563eb}.tm-special-case-card{background:linear-gradient(135deg,#fffbeb,#fef3c7);border:2px solid #f59e0b!important;box-shadow:0 4px 6px -1px #f59e0b1a,0 2px 4px -1px #f59e0b0f}.tm-special-case-badge{align-items:center;background:#f59e0b;border-radius:.375rem;color:#fff;cursor:help;display:inline-flex;font-size:.75rem;font-weight:600;gap:.25rem;margin-left:.5rem;padding:.25rem .5rem}.tm-special-case-info{background:#fef3c7;border:1px solid #f59e0b;border-radius:.5rem;margin-bottom:1rem;padding:.75rem}.tm-special-case-header{align-items:center;color:#d97706;display:flex;font-weight:600;gap:.5rem;margin-bottom:.5rem}.tm-special-case-reason{color:#92400e;font-size:.875rem;line-height:1.4}.tm-special-case-indicator{color:#f59e0b;font-weight:600}.tm-stat-card.tm-special-case{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff}.tm-btn-lock,.tm-btn-unlock{color:#f59e0b}.tm-btn-lock:hover,.tm-btn-unlock:hover{background:#fef3c7;color:#d97706}.tm-warning-box{background:#fef3c7;border:1px solid #f59e0b;border-radius:.5rem;margin-top:1rem;padding:1rem}.tm-warning-box p{color:#92400e;font-weight:600;margin:0 0 .5rem}.tm-warning-box ul{color:#92400e;margin:0;padding-left:1.5rem}.tm-warning-box li{margin-bottom:.25rem}.tm-large-modal .tm-modal-container{max-height:90vh;max-width:900px;overflow-y:auto}.tm-phase-history-section{grid-column:1/-1;margin-top:20px}.tm-phase-timeline{display:flex;flex-direction:column;gap:15px}.tm-phase-item{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:15px}.tm-phase-item.tm-phase-a{border-left:4px solid #3b82f6}.tm-phase-item.tm-phase-b{border-left:4px solid #f59e0b}.tm-phase-item.tm-phase-c{border-left:4px solid #10b981}.tm-phase-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:10px}.tm-phase-badge-large{background:#374151;border-radius:16px;color:#fff;font-size:14px;font-weight:700;padding:4px 12px}.tm-phase-completed{color:#10b981;font-weight:700}.tm-phase-ongoing{color:#f59e0b;font-weight:700}.tm-phase-details{display:flex;flex-direction:column;gap:12px}.tm-phase-dates{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.tm-date-item{display:flex;flex-direction:column;gap:4px}.tm-date-label{color:#6b7280;font-size:12px;font-weight:500}.tm-date-value{color:#374151;font-size:14px;font-weight:600}.tm-ongoing{color:#f59e0b;font-style:italic}.tm-phase-supervisor{align-items:center;border-top:1px solid #e5e7eb;display:flex;gap:8px;padding-top:8px}.tm-supervisor-label{color:#6b7280;font-size:12px}.tm-supervisor-name{color:#374151;font-size:13px;font-weight:500}.tm-current-phase-summary{background:#f0f9ff;border:1px solid #bae6fd;border-radius:8px;margin-top:10px;padding:15px}.tm-current-phase-summary h4{color:#0369a1;margin:0 0 10px}.tm-current-stats{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.tm-stat-item{align-items:center;display:flex;justify-content:space-between}.tm-stat-label{color:#6b7280;font-size:13px}.tm-stat-value{color:#0369a1;font-size:14px;font-weight:600}.tm-no-phase-history{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:20px;text-align:center}.tm-default-phase-info{margin-top:15px}.section-icon{color:#6b7280;margin-right:8px}@media (max-width:768px){.tm-current-stats,.tm-phase-dates{grid-template-columns:1fr}.tm-phase-header{align-items:flex-start;flex-direction:column;gap:8px}}.admin-del-container{background-color:#fafafa;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;margin:0 auto;max-width:1400px;min-height:100vh;padding:24px;width:100%}.admin-del-header{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 2px 8px #0000000d;padding:32px}.admin-del-header,.admin-del-header-content{margin-bottom:24px}.admin-del-page-title{color:#1f2937;font-size:28px;font-weight:600;letter-spacing:-.025em;margin:0 0 8px}.admin-del-page-subtitle{color:#6b7280;font-size:16px;font-weight:400;margin:0}.admin-del-header-controls{align-items:center;display:flex;flex-wrap:wrap;gap:16px}.admin-del-search-container{flex:1 1;min-width:280px}.admin-del-search-input{background:#fff;border:2px solid #e5e7eb;border-radius:8px;font-size:14px;padding:12px 16px;transition:all .2s ease;width:100%}.admin-del-search-input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.admin-del-filter-group{display:flex;flex-wrap:wrap;gap:12px}.admin-del-filter-select{background:#fff;border:2px solid #e5e7eb;border-radius:8px;color:#374151;cursor:pointer;font-size:14px;min-width:140px;padding:12px 16px;transition:all .2s ease}.admin-del-filter-select:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.admin-del-btn-refresh{align-items:center;background:#f3f4f6;border:2px solid #e5e7eb;border-radius:8px;color:#374151;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;padding:12px 20px;transition:all .2s ease}.admin-del-btn-refresh:hover{background:#e5e7eb;transform:translateY(-1px)}.admin-del-global-settings{margin-bottom:24px}.admin-del-settings-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 2px 8px #0000000d;padding:24px}.admin-del-settings-card h3{color:#1f2937;font-size:18px;font-weight:600;margin:0 0 16px}.admin-del-setting-controls{display:flex;flex-direction:column;gap:16px}.admin-del-setting-toggle{align-items:center;cursor:pointer;display:flex;gap:12px}.admin-del-setting-toggle input[type=checkbox]{display:none}.admin-del-toggle-slider{background:#e5e7eb;border-radius:12px;height:24px;position:relative;transition:all .3s ease;width:44px}.admin-del-toggle-slider:before{background:#fff;border-radius:50%;box-shadow:0 2px 4px #0000001a;content:"";height:20px;left:2px;position:absolute;top:2px;transition:all .3s ease;width:20px}.admin-del-setting-toggle input[type=checkbox]:checked+.admin-del-toggle-slider{background:#3b82f6}.admin-del-setting-toggle input[type=checkbox]:checked+.admin-del-toggle-slider:before{transform:translateX(20px)}.admin-del-setting-label{color:#374151;font-size:14px;font-weight:500}.admin-del-stats-overview{margin-bottom:32px}.admin-del-stat-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.admin-del-stat-card{background:#fff;border:2px solid #f3f4f6;border-radius:12px;overflow:hidden;padding:24px;position:relative;text-align:center;transition:all .3s ease}.admin-del-stat-card:before{background:#e5e7eb;content:"";height:4px;left:0;position:absolute;right:0;top:0;transition:all .3s ease}.admin-del-clickable{cursor:pointer}.admin-del-clickable:hover{box-shadow:0 8px 25px #0000001a;transform:translateY(-2px)}.admin-del-stat-card.admin-del-active{border-color:#3b82f6;box-shadow:0 4px 12px #3b82f626}.admin-del-stat-card.admin-del-active:before{background:#3b82f6}.admin-del-pending:before{background:#f59e0b}.admin-del-approved:before{background:#10b981}.admin-del-rejected:before{background:#ef4444}.admin-del-revision:before{background:#8b5cf6}.admin-del-stat-number{color:#1f2937;font-size:32px;font-weight:700;margin-bottom:8px}.admin-del-stat-label{color:#6b7280;font-size:14px;font-weight:500;letter-spacing:.05em;text-transform:uppercase}.admin-del-stat-icon{color:#d1d5db;font-size:24px;position:absolute;right:20px;top:20px}.admin-del-list{grid-gap:20px;display:grid;gap:20px}.admin-del-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden;transition:all .3s ease}.admin-del-card:hover{box-shadow:0 8px 25px #00000014;transform:translateY(-2px)}.admin-del-card-header{align-items:flex-start;border-bottom:1px solid #f3f4f6;display:flex;justify-content:space-between;padding:24px}.admin-del-card-title-section{flex:1 1}.admin-del-badges{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.admin-del-phase-badge{border-radius:20px;font-size:12px;font-weight:600;letter-spacing:.05em;padding:4px 12px;text-transform:uppercase}.admin-del-phase-a{background:#dbeafe;color:#1e40af}.admin-del-phase-b{background:#fef3c7;color:#92400e}.admin-del-phase-c{background:#d1fae5;color:#065f46}.admin-del-type-badge{background:#f3f4f6;border-radius:20px;color:#374151;font-size:12px;font-weight:500;padding:4px 12px}.admin-del-card-title{color:#1f2937;font-size:20px;font-weight:600;margin:0 0 4px}.admin-del-supervisor{color:#6b7280;font-size:14px;margin:0}.admin-del-card-status{text-align:right}.admin-del-status-indicator{border-radius:20px;font-size:12px;font-weight:600;letter-spacing:.05em;padding:6px 16px;text-transform:uppercase}.admin-del-status-pending{background:#fef3c7;color:#92400e}.admin-del-status-approved{background:#d1fae5;color:#065f46}.admin-del-status-rejected{background:#fee2e2;color:#991b1b}.admin-del-status-needs-revision{background:#ede9fe;color:#6b21a8}.admin-del-card-content{padding:24px}.admin-del-meta-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:20px}.admin-del-meta-item{align-items:center;color:#6b7280;display:flex;font-size:14px;gap:8px}.admin-del-meta-item svg{color:#9ca3af;height:16px;width:16px}.admin-del-feedback-preview{background:#f9fafb;border-left:4px solid #3b82f6;border-radius:8px;padding:16px}.admin-del-feedback-preview h4{color:#374151;font-size:14px;font-weight:600;margin:0 0 8px}.admin-del-feedback-preview p{color:#6b7280;font-size:14px;line-height:1.5;margin:0}.admin-del-card-footer{background:#f9fafb;border-top:1px solid #f3f4f6;padding:20px 24px}.admin-del-quick-actions{display:flex;flex-wrap:wrap;gap:12px}.admin-del-quick-actions button{align-items:center;border:1px solid #0000;border-radius:6px;cursor:pointer;display:flex;font-size:13px;font-weight:500;gap:6px;padding:8px 16px;transition:all .2s ease}.admin-del-btn-download{background:#f3f4f6;border-color:#e5e7eb;color:#374151}.admin-del-btn-download:hover{background:#e5e7eb;transform:translateY(-1px)}.admin-del-btn-view{background:#dbeafe;border-color:#bfdbfe;color:#1e40af}.admin-del-btn-view:hover{background:#bfdbfe;transform:translateY(-1px)}.admin-del-btn-approve{background:#d1fae5;border-color:#a7f3d0;color:#065f46}.admin-del-btn-approve:hover{background:#a7f3d0;transform:translateY(-1px)}.admin-del-btn-reject{background:#fee2e2;border-color:#fecaca;color:#991b1b}.admin-del-btn-reject:hover{background:#fecaca;transform:translateY(-1px)}.admin-del-empty-state{background:#fff;border:2px dashed #e5e7eb;border-radius:12px;padding:80px 40px;text-align:center}.admin-del-empty-icon{color:#d1d5db;font-size:48px;margin-bottom:16px}.admin-del-empty-state h3{color:#374151;font-size:18px;font-weight:600;margin:0 0 8px}.admin-del-empty-state p{color:#6b7280;font-size:14px;margin:0}.admin-del-modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.admin-del-modal-container{background:#fff;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a;max-height:90vh;max-width:800px;overflow:hidden;width:100%}.admin-del-modal-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:24px}.admin-del-modal-header h2{color:#1f2937;font-size:20px;font-weight:600;margin:0}.admin-del-btn-close{background:#f3f4f6;border:none;border-radius:6px;color:#6b7280;cursor:pointer;height:32px;transition:all .2s ease;width:32px}.admin-del-btn-close:hover{background:#e5e7eb;color:#374151}.admin-del-modal-body{max-height:60vh;overflow-y:auto;padding:24px}.admin-del-details-grid{grid-gap:32px;display:grid;gap:32px;grid-template-columns:1fr 1fr}.admin-del-detail-section h4{border-bottom:2px solid #f3f4f6;color:#1f2937;font-size:16px;font-weight:600;margin:0 0 16px;padding-bottom:8px}.admin-del-detail-list{display:flex;flex-direction:column;gap:12px}.admin-del-detail-row{align-items:center;display:flex;justify-content:space-between;padding:8px 0}.admin-del-detail-label{color:#6b7280;font-size:14px;font-weight:500}.admin-del-detail-value{color:#1f2937;font-size:14px;font-weight:500}.admin-del-feedback-full{background:#f9fafb;border-radius:8px;margin-bottom:16px;padding:16px}.admin-del-feedback-full p{color:#374151;font-size:14px;line-height:1.6;margin:0}.admin-del-feedback-meta{border-top:1px solid #e5e7eb;margin-top:12px;padding-top:12px}.admin-del-feedback-meta small{color:#6b7280;font-size:12px}.admin-del-no-feedback{color:#9ca3af;font-size:14px;font-style:italic}.admin-del-status-history h5{color:#374151;font-size:14px;font-weight:600;margin:16px 0 12px}.admin-del-status-timeline{display:flex;flex-direction:column;gap:8px}.admin-del-timeline-item{align-items:center;background:#f9fafb;border-radius:6px;display:flex;justify-content:space-between;padding:8px 12px}.admin-del-timeline-status{color:#374151;font-size:13px;font-weight:500}.admin-del-timeline-date{color:#6b7280;font-size:12px}.admin-del-modal-footer{background:#f9fafb;border-top:1px solid #e5e7eb;display:flex;gap:12px;justify-content:flex-end;padding:20px 24px}.admin-del-modal-footer button{align-items:center;border:1px solid #0000;border-radius:8px;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;padding:10px 20px;transition:all .2s ease}.admin-del-btn-feedback{background:#ede9fe;border-color:#c4b5fd;color:#6b21a8}.admin-del-btn-feedback:hover{background:#c4b5fd;transform:translateY(-1px)}.admin-del-feedback-form{display:flex;flex-direction:column;gap:20px}.admin-del-form-group{display:flex;flex-direction:column;gap:8px}.admin-del-form-group label{color:#374151;font-size:14px;font-weight:600}.admin-del-feedback-status-select,.admin-del-marks-input{background:#fff;border:2px solid #e5e7eb;border-radius:8px;color:#374151;font-size:14px;padding:12px 16px;transition:all .2s ease}.admin-del-feedback-status-select:focus,.admin-del-marks-input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.admin-del-feedback-textarea{border:2px solid #e5e7eb;border-radius:8px;font-family:inherit;font-size:14px;min-height:120px;padding:16px;resize:vertical;transition:all .2s ease}.admin-del-feedback-textarea:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.admin-del-btn-primary{background:#3b82f6;border-color:#3b82f6;color:#fff}.admin-del-btn-primary:hover:not(:disabled){background:#2563eb;transform:translateY(-1px)}.admin-del-btn-primary:disabled{background:#9ca3af;border-color:#9ca3af;cursor:not-allowed}.admin-del-btn-secondary{background:#f3f4f6;border-color:#e5e7eb;color:#374151}.admin-del-btn-secondary:hover{background:#e5e7eb;transform:translateY(-1px)}@media (max-width:768px){.admin-del-container{padding:16px}.admin-del-header{padding:20px}.admin-del-header-controls{align-items:stretch;flex-direction:column}.admin-del-filter-group{justify-content:stretch}.admin-del-filter-select{flex:1 1}.admin-del-details-grid,.admin-del-stat-grid{grid-template-columns:1fr}.admin-del-details-grid{gap:24px}.admin-del-modal-container{margin:10px;max-height:95vh}.admin-del-modal-footer,.admin-del-quick-actions{flex-direction:column}}@media (max-width:480px){.admin-del-page-title{font-size:24px}.admin-del-card-header{align-items:flex-start;flex-direction:column;gap:16px}.admin-del-meta-grid{grid-template-columns:1fr}}.evaluation-boards-main-container{background:linear-gradient(135deg,#f8fafc,#e2e8f0);font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;min-height:100vh;padding:24px}.evaluation-boards-top-header{align-items:flex-start;background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 6px -1px #0000001a;display:flex;justify-content:space-between;margin-bottom:32px;padding:24px}.evaluation-boards-header-content-wrapper{flex:1 1}.evaluation-boards-main-title{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text;color:#1a202c;font-size:2.5rem;font-weight:700;margin:0 0 8px}.evaluation-boards-subtitle-text{color:#64748b;font-size:1.125rem;font-weight:400;margin:0}.evaluation-boards-header-controls-panel{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.evaluation-boards-search-input-wrapper{position:relative}.evaluation-boards-search-field{background:#fff;border:2px solid #e2e8f0;border-radius:12px;font-size:14px;padding:12px 16px;transition:all .3s ease;width:280px}.evaluation-boards-search-field:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.evaluation-boards-create-new-btn,.evaluation-boards-refresh-data-btn{align-items:center;border:none;border-radius:12px;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;padding:12px 20px;text-decoration:none;transition:all .3s ease}.evaluation-boards-create-new-btn{background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 4px 15px #667eea66;color:#fff}.evaluation-boards-create-new-btn:hover{box-shadow:0 6px 20px #667eea99;transform:translateY(-2px)}.evaluation-boards-refresh-data-btn{background:#f8fafc;border:2px solid #e2e8f0;color:#475569}.evaluation-boards-refresh-data-btn:hover{background:#e2e8f0;transform:translateY(-1px)}.evaluation-boards-statistics-overview{margin-bottom:32px}.evaluation-boards-stats-grid-layout{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.evaluation-boards-stat-card-item{background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 6px -1px #0000001a;overflow:hidden;padding:24px;position:relative;transition:all .3s ease}.evaluation-boards-stat-card-item:hover{box-shadow:0 8px 25px #00000026;transform:translateY(-4px)}.evaluation-boards-stat-card-item:before{background:linear-gradient(135deg,#667eea,#764ba2);content:"";height:4px;left:0;position:absolute;right:0;top:0}.evaluation-boards-faculty-stat:before{background:linear-gradient(135deg,#f093fb,#f5576c)}.evaluation-boards-teams-stat:before{background:linear-gradient(135deg,#4facfe,#00f2fe)}.evaluation-boards-stat-number-display{color:#1a202c;font-size:2.5rem;font-weight:700;margin-bottom:8px}.evaluation-boards-stat-label-text{color:#64748b;font-size:1rem;font-weight:500}.evaluation-boards-stat-icon-wrapper{color:#e2e8f0;font-size:2rem;position:absolute;right:20px;top:20px}.evaluation-boards-cards-grid-container{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));margin-bottom:32px}.evaluation-boards-individual-card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 6px -1px #0000001a;overflow:hidden;transition:all .3s ease}.evaluation-boards-individual-card:hover{box-shadow:0 12px 28px #00000026;transform:translateY(-4px)}.evaluation-boards-card-header-section{align-items:flex-start;background:linear-gradient(135deg,#f8fafc,#fff);border-bottom:1px solid #f1f5f9;display:flex;justify-content:space-between;padding:20px}.evaluation-boards-card-title-wrapper h3{color:#1a202c;font-size:1.5rem;font-weight:600;margin:0 0 8px}.evaluation-boards-member-count-badge{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:20px;color:#fff;font-size:.875rem;font-weight:500;padding:4px 12px}.evaluation-boards-card-actions-group{display:flex;gap:8px}.evaluation-boards-action-btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;font-size:14px;height:36px;justify-content:center;transition:all .3s ease;width:36px}.evaluation-boards-view-btn{background:#e0f2fe;color:#0284c7}.evaluation-boards-view-btn:hover{background:#0284c7;color:#fff}.evaluation-boards-edit-btn{background:#fef3c7;color:#d97706}.evaluation-boards-edit-btn:hover{background:#d97706;color:#fff}.evaluation-boards-delete-btn{background:#fee2e2;color:#dc2626}.evaluation-boards-delete-btn:hover{background:#dc2626;color:#fff}.evaluation-boards-card-content-area{padding:20px}.evaluation-boards-description-text{color:#64748b;line-height:1.6;margin-bottom:16px}.evaluation-boards-faculty-preview-section h4{color:#374151;font-size:1.125rem;font-weight:600;margin-bottom:12px}.evaluation-boards-faculty-members-list{display:flex;flex-direction:column;gap:8px}.evaluation-boards-faculty-chip-item{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;display:flex;gap:12px;padding:8px}.evaluation-boards-faculty-avatar-circle{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;color:#fff;display:flex;font-size:14px;font-weight:600;height:32px;justify-content:center;width:32px}.evaluation-boards-faculty-name-text{color:#374151;font-weight:500}.evaluation-boards-faculty-dept-text{color:#64748b;font-size:.875rem}.evaluation-boards-faculty-more-indicator{color:#64748b;font-size:.875rem;font-style:italic;padding:8px;text-align:center}.evaluation-boards-no-faculty-message{color:#94a3b8;font-style:italic;padding:16px;text-align:center}.evaluation-boards-teams-info-section{border-top:1px solid #f1f5f9;display:flex;gap:16px;margin-top:16px;padding-top:16px}.evaluation-boards-info-item-wrapper{align-items:center;color:#64748b;display:flex;font-size:.875rem;gap:8px}.evaluation-boards-card-footer-section{align-items:center;background:#f8fafc;border-top:1px solid #f1f5f9;display:flex;justify-content:space-between;padding:16px 20px}.evaluation-boards-creation-date-text{color:#64748b;font-size:.875rem}.evaluation-boards-manage-details-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:500;padding:8px 16px;transition:all .3s ease}.evaluation-boards-manage-details-btn:hover{box-shadow:0 4px 12px #667eea66;transform:translateY(-1px)}.evaluation-boards-empty-state-container{background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 6px -1px #0000001a;padding:60px 20px;text-align:center}.evaluation-boards-empty-state-icon{color:#cbd5e1;font-size:4rem;margin-bottom:16px}.evaluation-boards-empty-state-container h3{color:#374151;font-size:1.5rem;margin-bottom:8px}.evaluation-boards-empty-state-container p{color:#64748b;margin-bottom:24px}.evaluation-boards-create-first-board-btn{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:12px;color:#fff;cursor:pointer;display:inline-flex;font-weight:600;gap:8px;padding:12px 24px;transition:all .3s ease}.evaluation-boards-create-first-board-btn:hover{box-shadow:0 6px 20px #667eea66;transform:translateY(-2px)}.evaluation-boards-modal-backdrop{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0009;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.evaluation-boards-modal-content-wrapper{background:#fff;border-radius:20px;box-shadow:0 25px 50px -12px #00000040;display:flex;flex-direction:column;max-height:90vh;max-width:600px;overflow:hidden;width:90%}.evaluation-boards-large-modal{max-width:900px}.evaluation-boards-modal-header-area{align-items:center;background:linear-gradient(135deg,#f8fafc,#fff);border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;padding:24px}.evaluation-boards-modal-header-area h2{color:#1a202c;font-size:1.5rem;font-weight:600;margin:0}.evaluation-boards-modal-title-section{align-items:center;display:flex;gap:12px}.evaluation-boards-faculty-count-badge{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:20px;color:#fff;font-size:.875rem;font-weight:500;padding:4px 12px}.evaluation-boards-modal-close-btn{align-items:center;background:#f1f5f9;border:none;border-radius:8px;color:#64748b;cursor:pointer;display:flex;height:40px;justify-content:center;transition:all .3s ease;width:40px}.evaluation-boards-modal-close-btn:hover{background:#e2e8f0;color:#374151}.evaluation-boards-modal-body-content{flex:1 1;overflow-y:auto;padding:24px}.evaluation-boards-form-input-group{margin-bottom:20px}.evaluation-boards-form-input-group label{color:#374151;display:block;font-size:.875rem;font-weight:600;margin-bottom:8px}.evaluation-boards-form-text-input,.evaluation-boards-form-textarea-input{border:2px solid #e2e8f0;border-radius:12px;font-family:inherit;font-size:14px;padding:12px 16px;transition:all .3s ease;width:100%}.evaluation-boards-form-text-input:focus,.evaluation-boards-form-textarea-input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.evaluation-boards-form-textarea-input{min-height:80px;resize:vertical}.evaluation-boards-faculty-search-wrapper{margin-bottom:16px}.evaluation-boards-faculty-selection-area{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;max-height:200px;overflow-y:auto}.evaluation-boards-faculty-option-item{align-items:center;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;padding:12px 16px}.evaluation-boards-faculty-option-item:last-child{border-bottom:none}.evaluation-boards-faculty-info-display{flex:1 1}.evaluation-boards-add-faculty-btn,.evaluation-boards-remove-faculty-btn{align-items:center;border:none;border-radius:6px;cursor:pointer;display:flex;height:32px;justify-content:center;transition:all .3s ease;width:32px}.evaluation-boards-add-faculty-btn{background:#dcfce7;color:#16a34a}.evaluation-boards-add-faculty-btn:hover:not(:disabled){background:#16a34a;color:#fff}.evaluation-boards-add-faculty-btn:disabled{background:#f1f5f9;color:#cbd5e1;cursor:not-allowed}.evaluation-boards-remove-faculty-btn{background:#fee2e2;color:#dc2626}.evaluation-boards-remove-faculty-btn:hover{background:#dc2626;color:#fff}.evaluation-boards-current-faculty-section,.evaluation-boards-selected-faculty-container{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;margin-top:16px;padding:16px}.evaluation-boards-current-faculty-section h4,.evaluation-boards-selected-faculty-container h4{color:#374151;font-size:1rem;font-weight:600;margin:0 0 12px}.evaluation-boards-current-faculty-item,.evaluation-boards-selected-faculty-item{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:8px;display:flex;justify-content:space-between;margin-bottom:8px;padding:8px 12px}.evaluation-boards-add-faculty-section{border-top:1px solid #e2e8f0;margin-top:20px;padding-top:20px}.evaluation-boards-add-faculty-section h4{color:#374151;font-size:1rem;font-weight:600;margin:0 0 12px}.evaluation-boards-modal-footer-actions{background:#f8fafc;border-top:1px solid #e2e8f0;display:flex;gap:12px;justify-content:flex-end;padding:20px 24px}.evaluation-boards-modal-primary-btn,.evaluation-boards-modal-secondary-btn{align-items:center;border:none;border-radius:12px;cursor:pointer;display:flex;font-weight:600;gap:8px;padding:12px 24px;transition:all .3s ease}.evaluation-boards-modal-secondary-btn{background:#f1f5f9;border:2px solid #e2e8f0;color:#64748b}.evaluation-boards-modal-secondary-btn:hover{background:#e2e8f0;color:#374151}.evaluation-boards-modal-primary-btn{background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 4px 15px #667eea66;color:#fff}.evaluation-boards-modal-primary-btn:hover:not(:disabled){box-shadow:0 6px 20px #667eea99;transform:translateY(-1px)}.evaluation-boards-modal-primary-btn:disabled{background:#cbd5e1;box-shadow:none;cursor:not-allowed}.evaluation-boards-details-grid-layout{grid-gap:24px;display:grid;gap:24px;grid-template-columns:1fr 2fr}.evaluation-boards-detail-info-section{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:20px}.evaluation-boards-detail-info-section h3{color:#1a202c;font-size:1.25rem;font-weight:600;margin:0 0 16px}.evaluation-boards-detail-list-container{display:flex;flex-direction:column;gap:12px}.evaluation-boards-detail-row-item{align-items:center;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;padding:8px 0}.evaluation-boards-detail-row-item:last-child{border-bottom:none}.evaluation-boards-detail-label-text{color:#64748b;font-weight:500}.evaluation-boards-detail-value-text{color:#374151;font-weight:600}.evaluation-boards-faculty-teams-section{background:#fff}.evaluation-boards-faculty-teams-list-container{display:flex;flex-direction:column;gap:16px}.evaluation-boards-faculty-team-card-item{border:1px solid #e2e8f0;border-radius:12px;overflow:hidden}.evaluation-boards-faculty-header-section{align-items:center;background:#f8fafc;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;padding:16px}.evaluation-boards-faculty-avatar-large-circle{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;color:#fff;display:flex;font-size:1.25rem;font-weight:600;height:48px;justify-content:center;width:48px}.evaluation-boards-faculty-details-wrapper h4{color:#1a202c;font-size:1.125rem;font-weight:600;margin:0 0 4px}.evaluation-boards-faculty-details-wrapper p{color:#64748b;font-size:.875rem;margin:0}.evaluation-boards-faculty-email-text{color:#667eea!important}.evaluation-boards-team-count-display{text-align:center}.evaluation-boards-team-number-text{color:#1a202c;display:block;font-size:1.5rem;font-weight:700}.evaluation-boards-team-label-text{color:#64748b;font-size:.875rem}.evaluation-boards-teams-list-section{padding:16px}.evaluation-boards-teams-list-section h5{color:#374151;font-size:1rem;font-weight:600;margin:0 0 12px}.evaluation-boards-team-item-wrapper{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;display:flex;justify-content:space-between;margin-bottom:8px;padding:12px}.evaluation-boards-team-name-text{color:#1a202c;font-weight:500}.evaluation-boards-team-members-text{color:#64748b;font-size:.875rem}.evaluation-boards-team-details-wrapper{align-items:center;display:flex;gap:8px}.evaluation-boards-team-phase-badge{background:#e0f2fe;color:#0284c7}.evaluation-boards-team-phase-badge,.evaluation-boards-team-status-badge{border-radius:12px;font-size:.75rem;font-weight:500;padding:2px 8px}.evaluation-boards-team-active{background:#dcfce7;color:#16a34a}.evaluation-boards-team-recruiting{background:#fef3c7;color:#d97706}.evaluation-boards-team-inactive{background:#fee2e2;color:#dc2626}.evaluation-boards-no-faculty-detail-message,.evaluation-boards-no-teams-message{color:#94a3b8;font-style:italic;padding:20px;text-align:center}@media (max-width:768px){.evaluation-boards-main-container{padding:16px}.evaluation-boards-top-header{align-items:stretch;flex-direction:column;gap:16px}.evaluation-boards-header-controls-panel{justify-content:stretch}.evaluation-boards-search-field{width:100%}.evaluation-boards-cards-grid-container{gap:16px;grid-template-columns:1fr}.evaluation-boards-stats-grid-layout{gap:12px;grid-template-columns:1fr}.evaluation-boards-modal-content-wrapper{max-height:95vh;width:95%}.evaluation-boards-details-grid-layout{gap:16px;grid-template-columns:1fr}.evaluation-boards-faculty-header-section{flex-direction:column;gap:12px;text-align:center}.evaluation-boards-team-item-wrapper{align-items:stretch;flex-direction:column;gap:8px}.evaluation-boards-team-details-wrapper{justify-content:center}}@media (max-width:480px){.evaluation-boards-main-title{font-size:2rem}.evaluation-boards-card-header-section{align-items:stretch;flex-direction:column;gap:12px}.evaluation-boards-card-actions-group{justify-content:center}.evaluation-boards-modal-body-content,.evaluation-boards-modal-header-area{padding:16px}.evaluation-boards-modal-footer-actions{flex-direction:column;padding:16px}.evaluation-boards-modal-primary-btn,.evaluation-boards-modal-secondary-btn{justify-content:center;width:100%}}.evaluation-boards-loading{opacity:.6;pointer-events:none}@keyframes evaluation-boards-fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.evaluation-boards-individual-card{animation:evaluation-boards-fadeIn .6s ease-out;animation-fill-mode:both}.evaluation-boards-individual-card:first-child{animation-delay:.1s}.evaluation-boards-individual-card:nth-child(2){animation-delay:.2s}.evaluation-boards-individual-card:nth-child(3){animation-delay:.3s}.evaluation-boards-individual-card:nth-child(4){animation-delay:.4s}.evaluation-boards-individual-card:nth-child(5){animation-delay:.5s}.evaluation-boards-individual-card:nth-child(6){animation-delay:.6s}.eval-admin-content-box{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;margin:20px;padding:32px}.eval-admin-management-header{align-items:center;border-bottom:2px solid #e8ecef;display:flex;justify-content:space-between;margin-bottom:32px;padding-bottom:20px}.eval-admin-management-header h2{color:#2c3e50;font-size:28px;font-weight:600;letter-spacing:-.5px;margin:0}.eval-admin-controls{display:flex;gap:12px}.eval-admin-action-button{align-items:center;border:none;border-radius:8px;cursor:pointer;display:inline-flex;font-size:14px;font-weight:500;gap:8px;letter-spacing:.3px;padding:12px 24px;text-transform:none;transition:all .3s ease}.eval-admin-action-button.eval-admin-primary{background:linear-gradient(135deg,#3498db,#2980b9);box-shadow:0 4px 12px #3498db4d;color:#fff}.eval-admin-action-button.eval-admin-primary:hover{background:linear-gradient(135deg,#2980b9,#21618c);box-shadow:0 6px 16px #3498db66;transform:translateY(-2px)}.eval-admin-action-button.eval-admin-secondary{background:#f8f9fa;border:2px solid #dee2e6;color:#495057}.eval-admin-action-button.eval-admin-secondary:hover{background:#e9ecef;border-color:#adb5bd}.eval-admin-action-button.eval-admin-cancel{background:#f8f9fa;border:1px solid #dee2e6;color:#6c757d}.eval-admin-action-button.eval-admin-cancel:hover{background:#e9ecef;color:#495057}.eval-admin-action-button:disabled{cursor:not-allowed;opacity:.6;transform:none}.eval-admin-evaluations-overview{margin-bottom:32px}.eval-admin-stats-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.eval-admin-stat-card{background:linear-gradient(135deg,#f8f9fa,#fff);border:1px solid #e9ecef;border-radius:12px;overflow:hidden;padding:24px;position:relative;text-align:center;transition:all .3s ease}.eval-admin-stat-card:before{background:linear-gradient(90deg,#3498db,#2980b9);content:"";height:4px;left:0;position:absolute;right:0;top:0}.eval-admin-stat-card:hover{box-shadow:0 8px 25px #0000001a;transform:translateY(-4px)}.eval-admin-stat-number{color:#2c3e50;font-size:36px;font-weight:700;line-height:1;margin-bottom:8px}.eval-admin-stat-label{color:#6c757d;font-size:14px;font-weight:500;letter-spacing:.5px;text-transform:uppercase}.eval-admin-evaluations-list{background:#f8f9fa;border-radius:12px;padding:24px}.eval-admin-no-evaluations{color:#6c757d;padding:60px 20px;text-align:center}.eval-admin-empty-icon{color:#dee2e6;font-size:48px;margin-bottom:20px}.eval-admin-no-evaluations h3{color:#495057;font-weight:600;margin-bottom:8px}.eval-admin-no-evaluations p{color:#6c757d;font-size:14px}.eval-admin-evaluations-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fill,minmax(400px,1fr))}.eval-admin-evaluation-card{background:#fff;border:1px solid #e9ecef;border-radius:12px;box-shadow:0 2px 8px #00000014;overflow:hidden;transition:all .3s ease}.eval-admin-evaluation-card:hover{box-shadow:0 8px 25px #00000026;transform:translateY(-2px)}.eval-admin-evaluation-header{align-items:flex-start;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-bottom:1px solid #dee2e6;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;padding:20px}.eval-admin-evaluation-header h4{color:#2c3e50;flex:1 1;font-size:18px;font-weight:600;margin:0;min-width:150px}.eval-admin-phase-badge{background:linear-gradient(135deg,#17a2b8,#138496);color:#fff}.eval-admin-phase-badge,.eval-admin-status-badge{border-radius:20px;font-size:12px;font-weight:600;letter-spacing:.5px;padding:6px 12px;text-transform:uppercase}.eval-admin-status-badge.eval-admin-pending-admin-review{background:linear-gradient(135deg,#ffc107,#e0a800);color:#212529}.eval-admin-status-badge.eval-admin-finalized{background:linear-gradient(135deg,#28a745,#1e7e34);color:#fff}.eval-admin-evaluation-info{padding:20px}.eval-admin-info-item{align-items:center;border-bottom:1px solid #f8f9fa;color:#495057;display:flex;font-size:14px;justify-content:space-between;padding:8px 0}.eval-admin-info-item:last-child{border-bottom:none}.eval-admin-info-item strong{color:#2c3e50;font-weight:600}.eval-admin-faculty-results-preview{background:#e8f4f8;border-radius:8px;margin-top:16px;padding:16px}.eval-admin-faculty-results-preview strong{color:#2c3e50;font-weight:600}.eval-admin-result-badge{background:linear-gradient(135deg,#17a2b8,#138496);border-radius:16px;color:#fff;font-size:13px;font-weight:600;margin-left:8px;padding:4px 12px}.eval-admin-evaluation-actions{background:#fafbfc;border-top:1px solid #f8f9fa;padding:20px}.eval-admin-review-btn{align-items:center;background:linear-gradient(135deg,#007bff,#0056b3);border:none;border-radius:8px;color:#fff;cursor:pointer;display:inline-flex;font-size:14px;font-weight:600;gap:8px;justify-content:center;padding:12px 24px;text-transform:none;transition:all .3s ease;width:100%}.eval-admin-review-btn:hover{background:linear-gradient(135deg,#0056b3,#004085);box-shadow:0 4px 12px #007bff4d;transform:translateY(-2px)}.eval-admin-modal-backdrop,.eval-admin-review-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0009;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1050}.eval-admin-modal-content-wrapper,.eval-admin-review-modal{animation:modalSlideIn .3s ease-out;background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;max-height:90vh;max-width:800px;overflow-y:auto;width:95%}.eval-admin-modal-header,.eval-admin-modal-header-area{align-items:center;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-bottom:2px solid #dee2e6;border-radius:16px 16px 0 0;display:flex;justify-content:space-between;padding:24px 32px}.eval-admin-modal-header h3,.eval-admin-modal-header-area h2{color:#2c3e50;font-size:20px;font-weight:600;margin:0}.eval-admin-close-button,.eval-admin-modal-close-btn{align-items:center;background:none;border:none;border-radius:50%;color:#6c757d;cursor:pointer;display:flex;font-size:24px;height:40px;justify-content:center;padding:8px;transition:all .3s ease;width:40px}.eval-admin-close-button:hover,.eval-admin-modal-close-btn:hover{background:#f8f9fa;color:#495057;transform:rotate(90deg)}.eval-admin-modal-body-content,.eval-admin-modal-content{padding:32px}.eval-admin-form-input-group{margin-bottom:24px}.eval-admin-form-input-group label{color:#2c3e50;display:block;font-size:14px;font-weight:600;margin-bottom:8px}.eval-admin-form-text-input{background:#fff;border:2px solid #e9ecef;border-radius:8px;font-size:14px;padding:12px 16px;transition:all .3s ease;width:100%}.eval-admin-form-text-input:focus{border-color:#3498db;box-shadow:0 0 0 3px #3498db1a;outline:none}.eval-admin-teams-list{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;max-height:200px;overflow-y:auto;padding:12px}.eval-admin-team-option{align-items:center;border-bottom:1px solid #e9ecef;display:flex;gap:12px;padding:8px 0}.eval-admin-team-option:last-child{border-bottom:none}.eval-admin-team-option input[type=checkbox]{transform:scale(1.2)}.eval-admin-team-option label{color:#495057;cursor:pointer;font-weight:500;margin:0}.eval-admin-modal-actions,.eval-admin-modal-footer-actions{background:#f8f9fa;border-radius:0 0 16px 16px;border-top:1px solid #dee2e6;display:flex;gap:12px;justify-content:flex-end;padding:24px 32px}.eval-admin-modal-primary-btn,.eval-admin-modal-secondary-btn{border:none;border-radius:8px;cursor:pointer;font-size:14px;font-weight:600;padding:12px 24px;text-transform:none;transition:all .3s ease}.eval-admin-modal-secondary-btn{background:#f8f9fa;border:2px solid #dee2e6;color:#495057}.eval-admin-modal-secondary-btn:hover{background:#e9ecef;border-color:#adb5bd}.eval-admin-modal-primary-btn{background:linear-gradient(135deg,#28a745,#1e7e34);box-shadow:0 4px 12px #28a7454d;color:#fff}.eval-admin-modal-primary-btn:hover{background:linear-gradient(135deg,#1e7e34,#155724);box-shadow:0 6px 16px #28a74566;transform:translateY(-2px)}.eval-admin-faculty-evaluations-summary{margin-bottom:32px}.eval-admin-faculty-evaluations-summary h4{border-bottom:2px solid #e9ecef;color:#2c3e50;font-size:18px;font-weight:600;margin-bottom:20px;padding-bottom:8px}.eval-admin-evaluations-grid-summary{grid-gap:16px;display:grid;gap:16px}.eval-admin-faculty-evaluation-item{background:#f8f9fa;border-left:4px solid #3498db;border-radius:8px;padding:16px}.eval-admin-faculty-info{align-items:center;display:flex;gap:12px;margin-bottom:8px}.eval-admin-supervisor-badge{background:linear-gradient(135deg,#17a2b8,#138496);border-radius:12px;color:#fff;font-size:11px;font-weight:600;padding:4px 8px;text-transform:uppercase}.eval-admin-evaluation-details span{color:#6c757d;display:block;font-size:13px;margin-bottom:4px}.eval-admin-individual-grades-section{margin-bottom:32px}.eval-admin-individual-grades-section h4{border-bottom:2px solid #e9ecef;color:#2c3e50;font-size:18px;font-weight:600;margin-bottom:20px;padding-bottom:8px}.eval-admin-grades-table{background:#fff;border:1px solid #dee2e6;border-radius:8px;overflow:hidden}.eval-admin-table-header{background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-bottom:2px solid #dee2e6;color:#2c3e50;font-size:14px;font-weight:600}.eval-admin-table-header,.eval-admin-table-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:2fr 1fr 1fr 2fr;padding:16px}.eval-admin-table-row{align-items:center;border-bottom:1px solid #f8f9fa}.eval-admin-table-row:last-child{border-bottom:none}.eval-admin-table-row:nth-child(2n){background:#fbfbfb}.eval-admin-student-info strong{color:#2c3e50;display:block;font-size:14px;margin-bottom:2px}.eval-admin-student-info small{color:#6c757d;font-size:12px}.eval-admin-original-grade{color:#495057;font-size:16px;font-weight:600}.eval-admin-grade-input{border:2px solid #e9ecef;border-radius:6px;font-size:14px;font-weight:600;padding:8px 12px;text-align:center;transition:all .3s ease;width:100%}.eval-admin-grade-input:focus{border-color:#3498db;box-shadow:0 0 0 3px #3498db1a;outline:none}.eval-admin-reason-input{border:2px solid #e9ecef;border-radius:6px;font-size:13px;padding:8px 12px;transition:all .3s ease;width:100%}.eval-admin-reason-input:focus{border-color:#3498db;box-shadow:0 0 0 3px #3498db1a;outline:none}.eval-admin-reason-input:disabled{background:#f8f9fa;color:#adb5bd}.eval-admin-comments-section{margin-bottom:24px}.eval-admin-comments-section h4{color:#2c3e50;font-size:16px;font-weight:600;margin-bottom:12px}.eval-admin-comments-textarea{border:2px solid #e9ecef;border-radius:8px;font-family:inherit;font-size:14px;min-height:100px;padding:16px;resize:vertical;transition:all .3s ease;width:100%}.eval-admin-comments-textarea:focus{border-color:#3498db;box-shadow:0 0 0 3px #3498db1a;outline:none}@media (max-width:768px){.eval-admin-content-box{margin:10px;padding:20px}.eval-admin-management-header{align-items:flex-start;flex-direction:column;gap:16px}.eval-admin-evaluations-grid{grid-template-columns:1fr}.eval-admin-table-header,.eval-admin-table-row{gap:8px;grid-template-columns:1fr}.eval-admin-modal-content-wrapper,.eval-admin-review-modal{margin:1%;width:98%}.eval-admin-modal-body-content,.eval-admin-modal-content{padding:20px}.eval-admin-modal-actions,.eval-admin-modal-footer-actions{flex-direction:column;gap:8px}}@media (max-width:480px){.eval-admin-management-header h2{font-size:24px}.eval-admin-stat-number{font-size:28px}.eval-admin-action-button{font-size:13px;padding:10px 20px}}.problems-user-type-badge{border-radius:12px;display:inline-block;font-size:11px;font-weight:500;margin-top:4px;padding:2px 8px}.problems-user-type-badge.student{background-color:#e3f2fd;color:#1976d2}.problems-user-type-badge.faculty{background-color:#f3e5f5;color:#7b1fa2}.problems-stat-card.problems-students{border-left:4px solid #2196f3}.problems-stat-card.problems-faculty{border-left:4px solid #9c27b0}.problems-stat-card.problems-students:hover{background-color:#e3f2fd}.problems-stat-card.problems-faculty:hover{background-color:#f3e5f5}.metrics-grid{grid-gap:20px;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin:20px 0}.metric-card{background:#fff;border-left:4px solid #2c3e50;border-left:4px solid var(--primary-color);border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:20px;text-align:center}.metric-value{color:#2c3e50;color:var(--primary-color);font-size:2em;margin-bottom:5px}.metric-label{color:#666;font-size:.9em;margin-bottom:5px}.metric-change{font-size:.8em;font-weight:700}.metric-change.positive{color:#10b981}.metric-change.negative{color:#ef4444}.report-header{margin-bottom:30px;text-align:center}.report-header h3{color:#2c3e50;color:var(--primary-color);margin:0}.report-subtitle{color:#666;font-size:.9em;margin:10px 0 0}.error-message{background:#fee2e2;border-left:4px solid #dc2626;border-radius:8px;color:#dc2626;margin:20px 0;padding:15px}.empty-state{color:#666;padding:60px 20px}.empty-state .empty-icon{color:#ddd;font-size:4em;margin-bottom:20px}.export-controls{gap:15px;margin-top:30px;text-align:center}.export-controls .admin-action-button{margin:0 10px}@media (max-width:768px){.metrics-grid{gap:15px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.metric-card{padding:15px}.metric-value{font-size:1.5em}}:root{--primary-color:#2d3748;--primary-dark:#1a202c;--secondary-color:#4a5568;--accent-color:#718096;--success-color:#38a169;--warning-color:#d69e2e;--danger-color:#e53e3e;--gray-50:#f7fafc;--gray-100:#edf2f7;--gray-200:#e2e8f0;--gray-300:#cbd5e0;--gray-400:#a0aec0;--gray-500:#718096;--gray-600:#4a5568;--gray-700:#2d3748;--gray-800:#1a202c;--gray-900:#171923;--black:#000;--border-color:#e2e8f0;--text-primary:#2d3748;--shadow-sm:0 1px 3px 0 #0000001a;--shadow-md:0 4px 6px -1px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a;--radius-md:0.375rem;--radius-lg:0.5rem;--radius-xl:0.75rem;--sidebar-width:280px;--sidebar-collapsed-width:80px;--transition:0.3s cubic-bezier(0.4,0,0.2,1)}body{background-color:#f7fafc;background-color:var(--gray-50);font-family:Inter,sans-serif;line-height:1.6}body,h1,h2,h3,h4,h5,h6{color:#2d3748;color:var(--text-primary)}.dashboard-container{background-color:#f7fafc;background-color:var(--gray-50);display:flex;min-height:100vh}.collapse-btn.minimal{background:#fff;background:var(--white);border:1px solid #e2e8f0;border:1px solid var(--border-color);box-shadow:0 2px 8px #0000001a;color:#2d3748;color:var(--text-primary)}.collapse-btn.minimal:hover{background:#f7fafc;background:var(--gray-50);border-color:#2d3748;border-color:var(--primary-color);color:#2d3748;color:var(--primary-color)}.collapse-btn.vibrant{background:linear-gradient(135deg,#667eea,#764ba2);border:2px solid #ffffff4d;box-shadow:0 4px 15px #667eea66,0 2px 4px #0000001a}.collapse-btn.vibrant:hover{background:linear-gradient(135deg,#5a67d8,#6b46c1);transform:translateY(-50%) scale(1.15)}.collapse-btn.neomorphism{background:#edf2f7;background:var(--gray-100);border:none;box-shadow:8px 8px 16px #a3b1c699,-8px -8px 16px #ffffff80;color:#2d3748;color:var(--text-primary)}.collapse-btn.neomorphism:hover{box-shadow:inset 4px 4px 8px #a3b1c699,inset -4px -4px 8px #ffffff80}.collapse-btn.fab{background:#2d3748;background:var(--primary-color);border:none;box-shadow:0 6px 20px #2d37484d;height:48px;right:-24px;width:48px}.collapse-btn.fab:hover{box-shadow:0 8px 25px #2d374866;transform:translateY(-50%) translateY(-2px)}.collapse-btn.glass-effect,.sidebar-expand-btn.glass-effect{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #fff3;color:#2d3748;color:var(--primary-color)}.sidebar-collapse-btn{@extend .collapse-btn;background-color:rgba(134,177,163,.447);color:#000;position:absolute;right:-18px;top:50%;transform:translateY(-50%)}.sidebar-collapse-btn svg{transition:transform .3s cubic-bezier(.4,0,.2,1)}.sidebar.collapsed .sidebar-collapse-btn svg{transform:rotate(180deg)}.navigation button{margin:4px 0;white-space:nowrap}.navigation button span{text-overflow:ellipsis}.credit-warning{align-items:center;background:#edf2f7;background:var(--gray-100);border:1px solid #e2e8f0;border:1px solid var(--gray-200);border-radius:.5rem;border-radius:var(--radius-lg);color:#d69e2e;color:var(--warning-color);display:flex;font-size:.875rem;gap:1rem;margin:4px 0;padding:12px 16px}.logout-btn,.notification-btn{position:relative}.notification-count{position:absolute;right:.5rem;top:50%;transform:translateY(-50%)}.sidebar.collapsed .logout-btn span,.sidebar.collapsed .notification-btn span,.sidebar.collapsed .notification-count{opacity:0;width:0}.main-content{background-color:#f7fafc;background-color:var(--gray-50);margin-left:280px;margin-left:var(--sidebar-width);min-height:100vh;padding:2rem;transition:margin-left .3s cubic-bezier(.4,0,.2,1);transition:margin-left var(--transition);width:calc(100% - 280px);width:calc(100% - var(--sidebar-width))}.main-content.collapsed{margin-left:80px;margin-left:var(--sidebar-collapsed-width);width:calc(100% - 80px);width:calc(100% - var(--sidebar-collapsed-width))}.notification-panel{border:1px solid #e5e7eb;border-radius:16px;box-shadow:0 12px 32px #00000026;display:flex;flex-direction:column;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;max-height:80vh;max-width:90vw;overflow:hidden;width:420px;z-index:20000}.notification-header{background:linear-gradient(135deg,#f8fafc,#f1f5f9);padding:1.25rem 1.5rem}.auto-read-indicator{background:#dcfce7;border-radius:12px;color:#10b981;font-size:.75rem;font-weight:600;padding:.25rem .5rem;-webkit-user-select:none;user-select:none}.close-panel-btn{background:#f3f4f6;border-radius:8px;font-size:1.1rem;padding:.5rem;transition:all .2s ease}.close-panel-btn:hover{background:#e5e7eb;color:#111827}.notifications-list{background:#fff;flex:1 1 auto}.no-notifications{color:#9ca3af;gap:1rem;text-align:center}.no-notif-icon{color:#cbd5e1;font-size:3rem}.no-notifications p{font-size:1rem;font-weight:500;margin:0}.notification-item{cursor:default;min-height:70px;transition:all .2s ease}.notification-item:last-child{border-bottom:none}.notification-item.read{background-color:#f8fafc}.notification-item:hover{background-color:#f0f9ff;transform:translateX(2px)}.notification-content{width:100%}.notification-type{flex-shrink:0;font-size:1.25rem;height:28px;margin-top:2px;width:28px}.notification-type.success{background:#dcfce7;color:#22c55e}.notification-type.error{background:#fee2e2}.notification-type.info{background:#dbeafe}.notification-type.warning{background:#fef3c7}.notification-text{display:flex;flex-direction:column;gap:.25rem;min-width:0;width:100%}.notification-text p{word-wrap:break-word;color:#1f2937;font-size:.9rem;font-weight:500;overflow-wrap:break-word;white-space:normal}.notification-text small{font-weight:400;margin-top:2px}.notification-close-btn{background:#0000;border-radius:4px;flex-shrink:0;font-size:1rem;height:24px;margin-top:2px;transition:all .2s ease;width:24px}.notification-close-btn:hover{background:#fee2e2}.clear-all-btn{background:linear-gradient(135deg,#ef4444,#dc2626);border-radius:10px;box-shadow:0 2px 4px #ef444433;font-weight:600;margin:1rem 1.5rem;padding:.75rem 1.25rem;transition:all .2s ease}.clear-all-btn:hover{background:linear-gradient(135deg,#dc2626,#b91c1c);box-shadow:0 4px 8px #ef44444d;transform:translateY(-1px)}@media (max-width:640px){.notification-panel{border-radius:0;height:75vh;left:0;max-height:75vh;max-width:100vw;right:0;top:60px;width:100vw}.notification-header{padding:1rem}.notification-header h3{font-size:1.1rem}.notification-item{min-height:60px;padding:1rem}.notification-content{gap:.5rem}.notification-text p{font-size:.85rem;line-height:1.3}.notification-text small{font-size:.7rem}.clear-all-btn{font-size:.8rem;margin:.75rem 1rem;padding:.75rem 1rem}.auto-read-indicator{font-size:.7rem;padding:.2rem .4rem}}.notifications-list::-webkit-scrollbar{width:6px}.notifications-list::-webkit-scrollbar-track{background:#f1f5f9}.notifications-list::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}.notifications-list::-webkit-scrollbar-thumb:hover{background:#94a3b8}.dashboard-view .header{margin-bottom:2rem}.dashboard-view .header h2{color:#2d3748;color:var(--text-primary);font-size:1.8rem;font-weight:600;margin-bottom:1.5rem}.stats{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:2rem}.stat-card{border:1px solid #e2e8f0;border:1px solid var(--border-color);border-radius:.5rem;box-shadow:0 1px 3px 0 #0000001a;box-shadow:var(--shadow-sm)}.stat-card h3{color:#4a5568;color:var(--text-secondary);font-size:1rem;margin-bottom:.5rem}.stat-card p{color:#2d3748;color:var(--text-primary);font-size:2rem;font-weight:700;margin:0}.create-team-container{background:#f7fafc;background:var(--gray-50);margin:0 auto;max-width:1400px;padding:2rem}.create-team-header{margin-bottom:2rem;text-align:center}.header-content .main-title{align-items:center;color:#2d3748;color:var(--text-primary);display:flex;font-size:2.25rem;font-weight:700;gap:1rem;justify-content:center;margin-bottom:.5rem}.header-content .subtitle{color:#4a5568;color:var(--text-secondary);font-size:1.1rem;line-height:1.6;margin:0 auto 2rem;max-width:650px}.team-requirements{display:flex;justify-content:center;margin:2rem 0}.requirement-card{background:#fff;background:var(--white);border:1px solid #e2e8f0;border:1px solid var(--border-color);border-radius:.75rem;border-radius:var(--radius-xl);box-shadow:0 1px 3px 0 #0000001a;box-shadow:var(--shadow-sm);max-width:600px;padding:1.5rem;width:100%}.req-header{align-items:flex-start;display:flex;gap:1rem}.req-icon{color:#4a5568;color:var(--text-secondary);flex-shrink:0;font-size:1.5rem;margin-top:.25rem}.req-content h3{color:#2d3748;color:var(--text-primary);font-size:1.25rem;margin:0 0 .75rem}.req-content ul{list-style:none;margin:0;padding:0}.req-content li{color:#4a5568;color:var(--text-secondary);line-height:1.5;margin-bottom:.5rem}.create-team-content{grid-gap:3rem;align-items:start;display:grid;gap:3rem;grid-template-columns:1fr 400px}.form-section{background:#fff;background:var(--white);border:1px solid #e2e8f0;border:1px solid var(--border-color);border-radius:.75rem;border-radius:var(--radius-xl);box-shadow:0 1px 3px 0 #0000001a;box-shadow:var(--shadow-sm);overflow:hidden}.team-creation-card{padding:2rem}.card-header{margin-bottom:2rem;padding-bottom:1rem}.card-header h3{font-size:1.5rem;margin-bottom:.5rem}.card-header p,.section-icon{color:#4a5568;color:var(--text-secondary)}.card-header p{line-height:1.5;margin:0}.request-status-section{border-top:1px solid #e2e8f0;border-top:1px solid var(--border-color);margin-top:1rem;padding-top:1rem}.requested-members-btn{align-items:center;background:#edf2f7;background:var(--gray-100);border:1px solid #e2e8f0;border:1px solid var(--border-color);border-radius:.5rem;border-radius:var(--radius-lg);color:#2d3748;color:var(--text-primary);cursor:pointer;display:flex;font-weight:500;gap:.5rem;padding:.75rem 1rem;position:relative;transition:all .2s ease}.requested-members-btn:hover{background:#e2e8f0;background:var(--gray-200)}.request-badge{align-items:center;background:#e53e3e;background:var(--danger-color);border-radius:50%;color:#fff;display:flex;font-size:.75rem;font-weight:600;height:20px;justify-content:center;margin-left:.25rem;width:20px}.creation-form{width:100%}.form-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:1fr 1fr}.form-group.full-width{grid-column:1/-1}.form-group label{align-items:center;display:flex;gap:.5rem}.label-icon{color:#4a5568;color:var(--text-secondary);font-size:.875rem}.form-input,.form-select,.form-textarea{background:#fff;background:var(--white);border:1px solid #e2e8f0;border:1px solid var(--border-color);border-radius:.5rem;border-radius:var(--radius-lg);font-family:inherit;font-size:.875rem;padding:.75rem 1rem;transition:all .2s ease}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:#2d3748;border-color:var(--text-primary);box-shadow:0 0 0 2px #2d37481a;outline:none}.form-input.error{background:#e53e3e0d;border-color:#e53e3e;border-color:var(--danger-color)}.form-textarea{min-height:80px;resize:vertical}.partner-search-section{margin-top:1.5rem}.search-section{margin-bottom:2rem}.search-controls{align-items:center;display:flex;gap:1rem}.search-input-wrapper{flex:1 1}.search-icon{font-size:1rem}.member-search-input{border:1px solid #e2e8f0;border:1px solid var(--border-color);border-radius:.5rem;border-radius:var(--radius-lg);font-size:.875rem;padding:.75rem 1rem .75rem 2.5rem;transition:all .2s ease;width:100%}.member-search-input:focus{border-color:#2d3748;border-color:var(--text-primary);box-shadow:0 0 0 2px #2d37481a;outline:none}.filter-select{font-size:.875rem;padding:.75rem 1rem}.available-students h4{align-items:center;color:#2d3748;color:var(--text-primary);display:flex;font-size:1.125rem;gap:.5rem;margin-bottom:1rem}.students-grid{grid-gap:1rem;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.student-card{background:var(--white);border:1px solid #e2e8f0;border:1px solid var(--border-color);border-radius:.75rem;border-radius:var(--radius-xl);box-shadow:0 1px 3px 0 #0000001a;box-shadow:var(--shadow-sm);padding:1.5rem;transition:all .2s ease}.student-card:hover{box-shadow:0 4px 6px -1px #0000001a;box-shadow:var(--shadow-md);transform:translateY(-2px)}.student-header{gap:1rem;margin-bottom:1rem}.student-avatar{background:#a0aec0;background:var(--gray-400);font-size:1.25rem;height:50px;width:50px}.student-info{flex:1 1}.student-info h5{color:#2d3748;color:var(--text-primary);font-size:1rem;margin:0 0 .25rem}.student-id{color:#4a5568;color:var(--text-secondary);font-size:.875rem;margin-bottom:.25rem}.student-major{color:#718096;color:var(--text-muted);font-size:.75rem}.student-stats{gap:1rem;margin-bottom:1rem}.stat-item{color:#4a5568;color:var(--text-secondary);font-size:.875rem;gap:.5rem}.stat-icon{color:#a0aec0;color:var(--gray-400);font-size:.875rem}.student-skills{margin:1rem 0}.skills-label{color:#4a5568;color:var(--text-secondary);font-size:.75rem}.skill-tag{border:1px solid #e2e8f0;border:1px solid var(--border-color)}.student-actions{margin-top:1rem}.request-sent-button,.send-request-btn{align-items:center;background:#fff;background:var(--white);border:1px solid #e2e8f0;border:1px solid var(--border-color);border-radius:.5rem;border-radius:var(--radius-lg);color:#2d3748;color:var(--text-primary);cursor:pointer;display:flex;font-weight:500;gap:.5rem;justify-content:center;padding:.75rem 1rem;transition:all .2s ease;width:100%}.request-sent-button,.send-request-btn:hover{background:#edf2f7;background:var(--gray-100)}.request-sent-button{color:#4a5568;color:var(--gray-600)}.no-students{color:#4a5568;color:var(--text-secondary);grid-column:1/-1;padding:3rem 1rem}.no-students-icon{color:#cbd5e0;color:var(--gray-300);font-size:3rem;margin-bottom:1rem}.preview-section{display:flex;flex-direction:column;gap:1.5rem}.rules-card,.team-preview-card{background:#fff;background:var(--white);border:1px solid #e2e8f0;border:1px solid var(--border-color);border-radius:.75rem;border-radius:var(--radius-xl);box-shadow:0 1px 3px 0 #0000001a;box-shadow:var(--shadow-sm);overflow:hidden}.preview-header,.rules-header{background:#f7fafc;background:var(--gray-50);border-bottom:1px solid #e2e8f0;border-bottom:1px solid var(--border-color);padding:1.5rem}.preview-header h3,.rules-header h3{align-items:center;color:#2d3748;color:var(--text-primary);display:flex;font-size:1.25rem;font-weight:600;gap:.75rem;margin:0}.preview-content{padding:1.5rem}.team-card-preview{background:#f7fafc;background:var(--gray-50);border:1px solid #e2e8f0;border:1px solid var(--border-color);border-radius:.75rem;border-radius:var(--radius-xl);padding:1.5rem}.team-header-preview{align-items:center;display:flex;gap:1rem;margin-bottom:1rem}.team-avatar-preview{align-items:center;background:#a0aec0;background:var(--gray-400);border-radius:50%;color:#fff;display:flex;font-size:1.25rem;font-weight:700;height:50px;justify-content:center;width:50px}.team-info-preview h4{color:#2d3748;color:var(--text-primary);font-size:1.125rem;margin:0 0 .5rem}.badges-preview{display:flex;gap:.5rem}.major-badge-preview,.phase-badge-preview{border:1px solid #e2e8f0;border:1px solid var(--border-color);border-radius:20px;font-size:.75rem;font-weight:500;padding:.25rem .75rem}.major-badge-preview{background:#edf2f7;background:var(--gray-100);color:#2d3748;color:var(--text-primary)}.phase-badge-preview{background:#e2e8f0;background:var(--gray-200);color:#2d3748;color:var(--text-primary)}.team-composition{background:#fff;background:var(--white);border:1px solid #e2e8f0;border:1px solid var(--border-color);border-radius:.75rem;border-radius:var(--radius-xl);box-shadow:0 1px 3px 0 #0000001a;box-shadow:var(--shadow-sm);margin:1.5rem 0;padding:1.5rem}.team-composition h5{color:#2d3748;color:var(--text-primary);font-size:1.125rem;font-weight:600;margin:0 0 1rem;text-align:center}.member-slots{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));margin-bottom:1rem}.member-slot{align-items:center;background:#f7fafc;background:var(--gray-50);border:2px dashed #e2e8f0;border:2px dashed var(--border-color);border-radius:.5rem;border-radius:var(--radius-lg);display:flex;flex-direction:column;justify-content:center;min-height:140px;padding:1.5rem 1rem;position:relative;text-align:center;transition:all .3s ease}.member-slot.filled{background:#38a1691a;border-color:#38a169;border-color:var(--success-color);border-style:solid}.member-slot.empty{background:#f7fafc;background:var(--gray-50);border-color:#cbd5e0;border-color:var(--gray-300);cursor:pointer}.member-slot.empty:hover{background:#2d37480d;border-color:#2d3748;border-color:var(--primary-color);transform:translateY(-2px)}.slot-icon{color:inherit;font-size:1rem;margin-bottom:.75rem}.member-slot.filled .slot-icon{color:#38a169;color:var(--success-color)}.member-slot.empty .slot-icon{color:#a0aec0;color:var(--gray-400)}.member-slot span{color:#2d3748;color:var(--text-primary);font-size:.9rem;font-weight:600;line-height:1.3}.composition-note{background:#3b82f61a;border:1px solid #3b82f633;border-radius:.5rem;border-radius:var(--radius-lg);margin-top:1rem;padding:.75rem;text-align:center}.composition-note small{align-items:center;color:#4a5568;color:var(--text-secondary);display:flex;font-size:.875rem;gap:.5rem;justify-content:center}.project-preview{border-top:1px solid #e2e8f0;border-top:1px solid var(--border-color);margin-top:1rem;padding-top:1rem}.project-preview h5{color:#2d3748;color:var(--text-primary);font-size:.875rem;margin:0 0 .5rem}.project-preview p{color:#4a5568;color:var(--text-secondary);font-size:.875rem;line-height:1.5;margin:0}.rules-list{padding:1.5rem}.rule-item{align-items:flex-start;display:flex;gap:1rem;margin-bottom:1rem}.rule-item:last-child{margin-bottom:0}.rule-icon{color:#38a169;color:var(--success-color);flex-shrink:0;margin-top:.125rem}.rule-item div{display:flex;flex-direction:column;gap:.25rem}.rule-item strong{color:#2d3748;color:var(--text-primary);font-size:.875rem;font-weight:600}.rule-item span{color:#4a5568;color:var(--text-secondary);font-size:.75rem;line-height:1.4}.request-status-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1001}.request-status-modal{background:#fff;background:var(--white);border-radius:.75rem;border-radius:var(--radius-xl);box-shadow:0 10px 15px -3px #0000001a;box-shadow:var(--shadow-lg);display:flex;flex-direction:column;max-height:80vh;max-width:600px;overflow:hidden;width:90%}.modal-header{padding:1.5rem}.modal-header h3{align-items:center;color:#2d3748;color:var(--text-primary);display:flex;font-size:1.25rem;gap:.5rem}.close-button{border-radius:.25rem;border-radius:var(--radius-sm);color:var(--gray-500);padding:.25rem}.close-button:hover{background:#edf2f7;background:var(--gray-100);color:#2d3748;color:var(--gray-700)}.modal-content{flex-grow:1;padding:1.5rem}.no-requests{color:#4a5568;color:var(--text-secondary);padding:2rem}.info-icon{color:#cbd5e0;color:var(--gray-300);font-size:3rem;margin-bottom:1rem}.requests-list{display:flex;flex-direction:column;gap:1rem}.request-item{align-items:center;background:#f7fafc;background:var(--gray-50);border:1px solid #e2e8f0;border:1px solid var(--border-color);border-radius:.5rem;border-radius:var(--radius-lg);display:flex;justify-content:space-between;padding:1rem}.request-info{gap:1rem}.request-details h5{font-size:.875rem}.request-status{text-align:right}.status-badge{border:1px solid #e2e8f0;border:1px solid var(--border-color);gap:.5rem;padding:.5rem 1rem}.status-badge.pending{background:#edf2f7;background:var(--gray-100);color:#d69e2e;color:var(--warning-color)}.status-icon{font-size:.875rem}.join-team-container{margin:0 auto;max-width:1200px;padding:2rem 1.5rem}.join-team-header{margin-bottom:2.5rem;text-align:center}.join-team-header h1{color:#2d3748;color:var(--text-primary);font-size:2.5rem;margin-bottom:.5rem}.search-filter-container{display:flex;flex-direction:column;gap:1.5rem;margin-top:2rem}.search-box{margin:0 auto;max-width:600px;position:relative;width:100%}.search-box input{border:1px solid #e2e8f0;border:1px solid var(--border-color);border-radius:50px;font-size:1rem;padding:1rem 1rem 1rem 2.8rem;transition:all .3s ease;width:100%}.search-box input:focus{border-color:#2d3748;border-color:var(--text-primary);box-shadow:0 0 0 2px #2d37481a;outline:none}.search-box .search-icon{color:#a0aec0;color:var(--gray-400);font-size:1.1rem;left:1.2rem;position:absolute;top:50%;transform:translateY(-50%)}.filter-controls{justify-content:center}.filter-group{align-items:center;gap:1rem}.filter-group label{align-items:center;color:#4a5568;color:var(--text-secondary);display:flex;font-weight:500;gap:.5rem}.filter-select{border:1px solid #e2e8f0;border:1px solid var(--border-color);border-radius:.5rem;border-radius:var(--radius-lg);padding:.6rem 1rem;transition:all .3s ease}.filter-select:focus{border-color:#2d3748;border-color:var(--text-primary)}.team-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));margin-top:2rem}.team-card{background:#fff;background:var(--white);border:1px solid #e2e8f0;border:1px solid var(--border-color);border-radius:.75rem;border-radius:var(--radius-xl);box-shadow:0 1px 3px 0 #0000001a;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;overflow:hidden;padding:.5rem;transition:all .3s ease}.team-card:hover{box-shadow:0 4px 6px -1px #0000001a;box-shadow:var(--shadow-md);transform:translateY(-5px)}.card-header{padding:1.5rem}.team-meta h3{color:#2d3748;color:var(--text-primary);font-size:1.3rem;margin:0 0 .5rem}.team-meta{flex-wrap:wrap;gap:.5rem;margin:1rem 0}.capstone-tag,.major-tag{border:1px solid #e2e8f0;border:1px solid var(--border-color);border-radius:20px;font-size:.8rem;font-weight:500;padding:.25rem .75rem}.major-tag{background:#edf2f7;background:var(--gray-100)}.capstone-tag,.major-tag{color:#2d3748;color:var(--text-primary)}.capstone-tag{background:#e2e8f0;background:var(--gray-200)}.members{display:flex;flex-wrap:wrap;gap:.75rem;margin:1.5rem 0}.member-avatar-container,.member-card{align-items:center;flex-direction:column;gap:.5rem}.member-avatar-container{background:#f7fafc;background:var(--gray-50);border:1px solid #e2e8f0;border:1px solid var(--border-color);border-radius:.5rem;border-radius:var(--radius-lg);display:flex;padding:.5rem}.avatar-placeholder,.teamProfile{align-items:center;background:#a0aec0;background:var(--gray-400);border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-weight:600;height:35px;justify-content:center;width:35px}.member-avatar-container .name{color:#2d3748;color:var(--text-primary);font-size:.875rem;font-weight:500}.team-lead-badge{background:#4a5568;background:var(--gray-600);border-radius:12px;color:#fff;font-size:.75rem;font-weight:500;padding:.125rem .5rem}.team-stats{gap:1.5rem;margin-top:auto}.card-body{flex:1 1;padding:1.5rem}.team-description{color:#4a5568;color:var(--text-secondary);font-size:.95rem;line-height:1.5;margin-bottom:1.5rem}.card-footer{background:#f7fafc;background:var(--gray-50);border-top:1px solid #e2e8f0;border-top:1px solid var(--border-color);padding:1.2rem 1.5rem}.join-button{background:#fff;background:var(--white);border:1px solid #e2e8f0;border:1px solid var(--border-color);border-radius:.5rem;border-radius:var(--radius-lg);color:#2d3748;color:var(--text-primary);gap:.6rem;justify-content:center;padding:.8rem;transition:all .3s ease;width:100%}.join-button:hover:not(.disabled){background:#edf2f7;background:var(--gray-100)}.join-button.disabled{background:#e2e8f0;background:var(--gray-200);color:#718096;color:var(--gray-500);cursor:not-allowed}.no-results{color:#4a5568;color:var(--text-secondary);grid-column:1/-1;padding:4rem 2rem}.sad-icon{color:#cbd5e0;color:var(--gray-300);font-size:3rem;margin-bottom:1rem}.team-actions{gap:.5rem;margin-top:1.5rem}.primary-btn,.secondary-btn{background:#fff;background:var(--white);border:1px solid #e2e8f0;border:1px solid var(--border-color);color:#2d3748;color:var(--text-primary);font-size:.875rem;font-weight:500}.primary-btn:hover{background:#edf2f7;background:var(--gray-100)}.secondary-button{background:#0000;border:1px solid #e2e8f0;border:1px solid var(--border-color);border-radius:.5rem;border-radius:var(--radius-lg);color:#2d3748;color:var(--text-primary);cursor:pointer;font-weight:500;padding:.75rem 1rem;transition:all .2s ease}.secondary-button:hover{background:#edf2f7;background:var(--gray-100);box-shadow:0 1px 3px 0 #0000001a;box-shadow:var(--shadow-sm)}.faculty-directory{margin:0 auto;max-width:1200px}.faculty-directory h2{color:#2d3748;color:var(--text-primary);font-size:2rem;margin-bottom:1.5rem}.search-filter{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:2rem}.search-filter input{flex:1 1;min-width:200px}.search-filter input,.search-filter select{border:1px solid #e2e8f0;border:1px solid var(--border-color);border-radius:.5rem;border-radius:var(--radius-lg);padding:.75rem}.search-filter select{background:#fff;background:var(--white)}.faculty-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.faculty-card{background:#fff;background:var(--white);border:1px solid #e2e8f0;border:1px solid var(--border-color);border-radius:.75rem;border-radius:var(--radius-xl);box-shadow:0 1px 3px 0 #0000001a;box-shadow:var(--shadow-sm);padding:1.5rem;transition:all .2s ease}.faculty-card:hover{box-shadow:0 4px 6px -1px #0000001a;box-shadow:var(--shadow-md);transform:translateY(-2px)}.faculty-header{display:flex;gap:1rem;margin-bottom:1rem}.faculty-header .avatar{align-items:center;background:#a0aec0;background:var(--gray-400);border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:1.5rem;font-weight:600;height:60px;justify-content:center;width:60px}.faculty-info{flex:1 1}.faculty-info h3{color:#2d3748;color:var(--text-primary);margin:0 0 .25rem}.faculty-info .major{color:#4a5568;color:var(--text-secondary);font-size:.9rem}.availability{margin-top:.5rem}.available{color:#38a169;color:var(--success-color)}.available,.unavailable{align-items:center;display:flex;font-size:.875rem;font-weight:500;gap:.5rem}.unavailable{color:#e53e3e;color:var(--danger-color)}.faculty-details .detail-item{align-items:center;color:#4a5568;color:var(--text-secondary);display:flex;font-size:.875rem;gap:.5rem;margin:.5rem 0}.expertise-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem}.expertise-tag{background:#edf2f7;background:var(--gray-100);border:1px solid #e2e8f0;border:1px solid var(--border-color);border-radius:20px;color:#2d3748;color:var(--text-primary);font-size:.75rem;padding:.25rem .75rem}.faculty-actions{display:flex;gap:.5rem;margin-top:1.5rem}.profile-btn,.request-btn{align-items:center;background:#fff;background:var(--white);border:1px solid #e2e8f0;border:1px solid var(--border-color);border-radius:.5rem;border-radius:var(--radius-lg);color:#2d3748;color:var(--text-primary);cursor:pointer;display:flex;flex:1 1;font-size:.875rem;font-weight:500;gap:.5rem;justify-content:center;padding:.75rem 1rem;transition:all .2s ease}.profile-btn:hover,.request-btn:hover{background:#edf2f7;background:var(--gray-100)}.request-btn:disabled{background:#e2e8f0;background:var(--gray-200);color:#718096;color:var(--gray-500);cursor:not-allowed;opacity:.7}.phase-btn{background:#fff;background:var(--white);border:1px solid #e2e8f0;border:1px solid var(--border-color);border-radius:.5rem;border-radius:var(--radius-lg)}.phase-btn.active{background:#e2e8f0;background:var(--gray-200);border-color:#cbd5e0;border-color:var(--gray-300)}.phase-btn:hover:not(.active){background:#edf2f7;background:var(--gray-100)}.material-card:hover{box-shadow:0 4px 6px -1px #0000001a;box-shadow:var(--shadow-md);transform:translateY(-3px)}.material-card .card-header{margin-bottom:1rem}.file-icon{color:#718096;color:var(--gray-500);font-size:2rem}.file-meta .category{color:var(--text-primary);display:block;font-weight:500}.file-meta .date{color:#a0aec0;color:var(--gray-400)}.material-title{font-size:1.2rem;margin:0 0 .5rem}.material-description{margin-bottom:1.5rem}.file-details{margin-bottom:1rem}.detail-icon{color:#a0aec0;color:var(--gray-400)}.material-phase{background:#e2e8f0;background:var(--gray-200);color:#2d3748}.download-btn,.material-phase{border:1px solid #e2e8f0;border:1px solid var(--border-color);color:var(--text-primary)}.download-btn{border-radius:var(--radius-lg);font-weight:500;gap:.5rem;margin-top:1rem;padding:.75rem}.download-btn:hover{background:#edf2f7;background:var(--gray-100)}.chat-view{height:calc(100vh - 4rem);margin:0 auto;max-width:800px}.chat-header h3{color:#2d3748;color:var(--text-primary);margin:0 0 .5rem}.team-info{display:flex;flex-wrap:wrap;gap:1rem}.team-info .capstone,.team-info .major{border:1px solid #e2e8f0;border:1px solid var(--border-color);border-radius:20px;font-size:.75rem;font-weight:500;padding:.25rem .75rem}.team-info .major{background:#edf2f7;background:var(--gray-100)}.team-info .capstone,.team-info .major{color:#2d3748;color:var(--text-primary)}.team-info .capstone{background:#e2e8f0;background:var(--gray-200)}.message{background:#fff;background:var(--white);border:1px solid #e2e8f0;border:1px solid var(--border-color);border-radius:.75rem;border-radius:var(--radius-xl);box-shadow:0 1px 3px 0 #0000001a;box-shadow:var(--shadow-sm);padding:1rem}.message.sent{background:#e2e8f0;background:var(--gray-200);border-radius:.75rem .75rem 4px .75rem;border-radius:var(--radius-xl) var(--radius-xl) 4px var(--radius-xl);color:#2d3748;color:var(--text-primary);margin-left:auto}.message.received{background:#fff;background:var(--white);border:1px solid #e2e8f0;border:1px solid var(--border-color);border-radius:.75rem .75rem .75rem 4px;border-radius:var(--radius-xl) var(--radius-xl) var(--radius-xl) 4px}.message-header{color:#4a5568;color:var(--text-secondary);display:flex;font-size:.8rem;justify-content:space-between;margin-bottom:.5rem}.message-content{line-height:1.5}.file-message a{text-decoration:none}.file-message a:hover{text-decoration:underline}.input-group input:focus{border-color:#2d3748;border-color:var(--text-primary);outline:none}.file-upload{align-items:center;cursor:pointer;display:flex}.file-upload label{border-radius:.5rem;border-radius:var(--radius-lg);color:#718096;color:var(--gray-500);transition:all .2s ease}.file-upload label:hover,.send-btn{background:#e2e8f0;background:var(--gray-200)}.send-btn{border:1px solid #e2e8f0;border:1px solid var(--border-color);border-radius:.5rem;border-radius:var(--radius-lg);color:#2d3748;color:var(--text-primary);padding:.75rem 1rem}.send-btn:hover{background:#cbd5e0;background:var(--gray-300)}.chat-input .input-group{align-items:center;background:#fff;background:var(--white);border-top:1px solid #e2e8f0;border-top:1px solid var(--border-color);display:flex;flex-direction:row;gap:.5rem;padding:.75rem}.chat-input .input-group input[type=text]{border:1px solid #e2e8f0;border:1px solid var(--border-color);border-radius:.5rem;border-radius:var(--radius-lg);flex:1 1;font-size:.9rem;padding:.75rem 1rem}.chat-input .input-group .file-upload{flex-shrink:0}.chat-input .input-group .file-upload label{background:#edf2f7;background:var(--gray-100);border:1px solid #e2e8f0;border:1px solid var(--border-color);border-radius:.5rem;border-radius:var(--radius-lg)}.chat-input .input-group .file-upload label,.chat-input .input-group .send-btn{align-items:center;cursor:pointer;display:flex;height:40px;justify-content:center;width:40px}.chat-input .input-group .send-btn{background:#2d3748;background:var(--primary-color);border:none;border-radius:.5rem;border-radius:var(--radius-lg);color:#fff;flex-shrink:0}.chat-input .input-group .file-upload label:hover{background:#e2e8f0;background:var(--gray-200)}.chat-input .input-group .send-btn:hover{background:#1a202c;background:var(--primary-dark)}.no-team-chat{align-items:center;color:#4a5568;color:var(--text-secondary);display:flex;flex-direction:column;height:100%;justify-content:center;padding:2rem;text-align:center}.chat-icon{color:#cbd5e0;color:var(--gray-300);font-size:4rem;margin-bottom:1rem}.meetings-container{margin:0 auto;max-width:1000px;padding:2rem}.meetings-header{border-bottom:1px solid #e2e8f0;border-bottom:1px solid var(--border-color);margin-bottom:2rem;padding-bottom:1rem}.meetings-header h2{color:#2d3748;color:var(--text-primary);margin:0}.refresh-controls{display:flex;gap:1rem}.refresh-btn{background:#fff;background:var(--white);border:1px solid #e2e8f0;border:1px solid var(--border-color);color:#2d3748;color:var(--text-primary);padding:.75rem 1rem}.refresh-btn:hover{background:#edf2f7;background:var(--gray-100)}.announcements-list{display:flex;flex-direction:column;gap:1rem}.no-announcements{color:#4a5568;color:var(--text-secondary);padding:4rem 2rem;text-align:center}.empty-icon{color:#cbd5e0;color:var(--gray-300)}.announcement-card{align-items:flex-start;background:#fff;background:var(--white);border:1px solid #e2e8f0;border:1px solid var(--border-color);border-radius:.75rem;border-radius:var(--radius-xl);box-shadow:0 1px 3px 0 #0000001a;box-shadow:var(--shadow-sm);display:flex;gap:1rem;justify-content:space-between;padding:1.5rem;transition:all .2s ease}.announcement-card:hover{box-shadow:0 4px 6px -1px #0000001a;box-shadow:var(--shadow-md)}.announcement-content{flex:1 1}.announcement-title{align-items:center;color:#2d3748;color:var(--text-primary);display:flex;font-size:1.25rem;gap:.75rem;margin:0 0 .75rem}.announcement-text,.title-icon{color:#4a5568;color:var(--text-secondary)}.announcement-text{line-height:1.6;margin-bottom:1rem}.announcement-meta{display:flex;flex-wrap:wrap;gap:1.5rem}.meta-item{align-items:center;color:#4a5568;color:var(--text-secondary);display:flex;font-size:.875rem;gap:.5rem}.meta-icon{color:#a0aec0;color:var(--gray-400)}.announcement-actions{display:flex;gap:.5rem}.dismiss-btn{background:none;border:none;border-radius:.5rem;border-radius:var(--radius-lg);color:#a0aec0;color:var(--gray-400);cursor:pointer;padding:.5rem;transition:all .2s ease}.dismiss-btn:hover{background:#edf2f7;background:var(--gray-100);color:#e53e3e;color:var(--danger-color)}.tutorial-content{border:1px solid #e2e8f0;border:1px solid var(--border-color);max-width:800px;padding:3rem}.tutorial-content h2{color:#2d3748;color:var(--text-primary);font-size:2rem;margin-bottom:2rem}.tutorial-steps{grid-gap:2rem;gap:2rem;grid-template-columns:repeat(3,1fr)}.step{transition:transform .2s ease}.step:hover{transform:translateY(-5px)}.step .icon{background:#4a5568;background:var(--gray-600);height:60px;width:60px}.step h4{color:#2d3748;color:var(--text-primary);margin-bottom:.5rem}.step p{color:#4a5568;color:var(--text-secondary);font-size:.875rem;line-height:1.5}.close-tutorial{background:#4a5568;background:var(--gray-600);transition:all .2s ease}.close-tutorial:hover{background:#2d3748;background:var(--gray-700)}.loading-screen{color:#2d3748;color:var(--text-primary);font-size:1.25rem}@media (max-width:1024px){.mobile-menu-btn{display:flex}.sidebar{position:fixed;transform:translateX(-100%);width:280px;width:var(--sidebar-width);z-index:1001}.sidebar.mobile-open{transform:translateX(0)}.sidebar.collapsed{padding:1.5rem;transform:translateX(-100%);width:280px;width:var(--sidebar-width)}.sidebar.collapsed.mobile-open{transform:translateX(0)}.sidebar.collapsed .logout-btn span,.sidebar.collapsed .navigation button span,.sidebar.collapsed .notification-btn span,.sidebar.collapsed .notification-count,.sidebar.collapsed .sidebar-header h1{opacity:1;overflow:visible;width:auto}.collapse-btn{display:none}.main-content,.main-content.collapsed{margin-left:0;padding:5rem 1.5rem 1.5rem;width:100%}.mobile-overlay{display:block}.create-team-content{gap:2rem;grid-template-columns:1fr}.preview-section{order:-1}.form-grid{grid-template-columns:1fr}.search-controls{flex-direction:column;gap:1rem}.tutorial-steps{gap:1rem;grid-template-columns:1fr}.faculty-grid,.materials-grid,.teams-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.stats{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.controls{gap:1rem}.controls,.search-filter{flex-direction:column}}@media (max-width:768px){.sidebar-header{padding:1.5rem 1rem 1rem}.sidebar-footer{padding:1rem 0 0}.mobile-menu-btn{height:45px;left:.5rem;top:.5rem;width:45px}.create-team-container{padding:1rem}.main-title{flex-direction:column;font-size:2rem;gap:.5rem}.team-creation-card{padding:1.5rem}.search-filter-container{gap:1rem}.filter-controls{flex-direction:column;gap:.5rem}.materials-page{padding:1rem}.library-title{font-size:2rem}.chat-view{height:calc(100vh - 2rem);margin:1rem}.announcement-card{flex-direction:column;gap:1rem}.announcement-meta{flex-direction:column;gap:.5rem}.faculty-grid,.materials-grid,.stats,.teams-grid{grid-template-columns:1fr}}@media (max-width:480px){.sidebar{max-width:100vw;min-width:0;width:100vw}.main-content,.main-content.collapsed{padding:4rem 1rem 1rem}.sidebar-header{padding:1.5rem 1rem}.credit-warning,.navigation button{font-size:.9rem;padding:10px 14px}.logout-btn,.notification-btn{font-size:.9rem;padding:.75rem 1rem}.create-team-container{padding:.5rem}.team-creation-card{padding:1rem}.main-title{font-size:1.75rem}.subtitle{font-size:1rem}.requirement-card{padding:1rem}.search-box input{padding:.75rem .75rem .75rem 2.5rem}.member-slots{flex-direction:column}.profile-modal{padding:1.5rem}.tutorial-content{padding:2rem 1rem}.faculty-card,.material-card,.team-card{padding:1rem}.chat-input{padding:.75rem}.input-group{flex-wrap:wrap;gap:.5rem}.input-group input{min-width:200px}}@media print{.mobile-menu-btn,.mobile-overlay,.notification-panel,.sidebar{display:none!important}.main-content{margin-left:0!important;width:100%!important}.faculty-card,.material-card,.team-card{break-inside:avoid;page-break-inside:avoid}*{box-shadow:none!important}}.mobile-menu-btn{display:none}.mobile-overlay{display:none;z-index:999}@media (max-width:1024px){.mobile-menu-btn{display:flex}.sidebar{height:100vh;left:0;position:fixed;top:0;transform:translateX(-100%);width:280px;width:var(--sidebar-width);z-index:1001}.sidebar.mobile-open{transform:translateX(0)}.sidebar.collapsed{padding:1.5rem;transform:translateX(-100%);width:280px;width:var(--sidebar-width)}.sidebar.collapsed.mobile-open{transform:translateX(0)}.sidebar.collapsed .logout-btn span,.sidebar.collapsed .navigation button span,.sidebar.collapsed .notification-btn span,.sidebar.collapsed .notification-count,.sidebar.collapsed .sidebar-header h1{opacity:1;overflow:visible;width:auto}.collapse-btn{display:none}.main-content,.main-content.collapsed{margin-left:0;padding:5rem 1.5rem 1.5rem;width:100%}.mobile-overlay{display:block}}@media (max-width:768px){.sidebar.collapsed .sidebar-header h1:before{align-items:center;background:#000;background:var(--black);border:2px solid #000;border:2px solid var(--black);border-radius:50%;box-shadow:0 1px 3px 0 #0000001a;box-shadow:var(--shadow-sm);color:#fff;color:var(--white);content:"SM";display:inline-flex;font-size:1.2rem;font-weight:700;height:48px;justify-content:center;margin-top:5vh;transition:all .3s cubic-bezier(.4,0,.2,1);transition:all var(--transition);width:48px}.mobile-menu-btn{height:45px;left:.5rem;top:.5rem;width:45px}.main-content,.main-content.collapsed{padding:4rem 1rem 1rem}}@media (max-width:480px){.sidebar{max-width:100vw;min-width:0;width:100vw}.main-content,.main-content.collapsed{padding:4rem 1rem 1rem}}.student-status{align-items:center;color:#38a169;color:var(--success-color);display:flex;font-size:.75rem;font-weight:600;margin-top:.25rem}.student-status svg{font-size:.75rem;margin-right:.25rem}.no-students p strong{color:#38a169;color:var(--success-color);font-weight:600}.avatar-wrapper{align-items:center;display:flex;justify-content:center}.student-avatar-img{border:2px solid #2d3748;border:2px solid var(--primary-color);border-radius:50%;box-shadow:0 2px 8px #0000001a;height:60px;object-fit:cover;width:60px}.profile-avatar{border:3px solid #2d3748;border:3px solid var(--primary-color);box-shadow:0 4px 12px #00000026}.student-avatar{background:#2d3748;background:var(--primary-color);border:2px solid #2d3748;border:2px solid var(--primary-color);box-shadow:0 2px 8px #0000001a;font-size:1.5rem;height:60px;width:60px}.member-item-with-avatar{align-items:center;background:#fff;background:var(--white);border:1px solid #e2e8f0;border:1px solid var(--border-color);border-radius:.375rem;border-radius:var(--radius-md);display:flex;gap:.75rem;margin-bottom:.5rem;padding:.75rem}.member-avatar-container{border-radius:50%;height:48px;overflow:hidden;position:relative;width:48px}.member-profile-pic{border-radius:50%;height:100%;object-fit:cover;width:100%}.member-avatar-fallback{align-items:center;background:#a0aec0;background:var(--gray-400);border-radius:50%;color:#fff;display:flex;font-size:1.2rem;font-weight:600;height:100%;justify-content:center;width:100%}.member-info{flex-direction:column;gap:.25rem}.member-name{color:#2d3748;color:var(--text-primary);font-size:.95rem}.member-role{color:#4a5568;color:var(--text-secondary);font-size:.8rem}.member-id{color:#718096;color:var(--text-muted);font-size:.75rem}.members-preview-grid{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));margin-top:.75rem}.member-preview-card{align-items:center;background:#f7fafc;background:var(--gray-50);border:1px solid #e2e8f0;border:1px solid var(--border-color);border-radius:.375rem;border-radius:var(--radius-md);display:flex;flex-direction:column;padding:.75rem;text-align:center}.member-preview-card.empty{background:#edf2f7;background:var(--gray-100);border-style:dashed;opacity:.7}.member-preview-avatar{border-radius:50%;height:40px;margin-bottom:.5rem;overflow:hidden;position:relative;width:40px}.member-preview-avatar.empty{align-items:center;background:#cbd5e0;background:var(--gray-300);display:flex;justify-content:center}.member-preview-pic{border-radius:50%;height:100%;object-fit:cover;width:100%}.member-preview-fallback{align-items:center;background:#a0aec0;background:var(--gray-400);border-radius:50%;color:#fff;display:flex;font-size:1rem;font-weight:600;height:100%;justify-content:center;width:100%}.empty-slot-icon{color:#718096;color:var(--gray-500);font-size:1.2rem}.member-preview-info{display:flex;flex-direction:column;gap:.25rem}.member-preview-name{color:#2d3748;color:var(--text-primary);font-size:.8rem;font-weight:500}.member-preview-role{color:#4a5568;color:var(--text-secondary);font-size:.7rem}.my-team-section{margin-bottom:2rem}.status-badge.my-team{background:#38a169;background:var(--success-color);border-radius:20px;color:#fff;font-size:.8rem;font-weight:600;padding:.25rem .75rem}@media (max-width:768px){.members-preview-grid{gap:.5rem;grid-template-columns:repeat(2,1fr)}.member-item-with-avatar{gap:.5rem;padding:.5rem}.member-avatar-container{height:40px;width:40px}}.incoming-requests-section>h3{align-items:center;color:#111827;display:flex;font-size:1.25rem;font-weight:600;margin-bottom:1rem}.incoming-requests-section>h3 svg{color:#3b82f6;margin-right:.5rem}.join-request-card{margin-bottom:.75rem}.join-request-card .request-info{align-items:center;display:flex;gap:.75rem}.join-request-card .avatar-wrapper{flex-shrink:0;height:45px;width:45px}.join-request-card .avatar-wrapper img{border-radius:50%;height:100%;object-fit:cover;width:100%}.join-request-card .avatar-wrapper .student-avatar{align-items:center;background-color:#3b82f6;border-radius:50%;color:#fff;display:flex;font-size:1rem;font-weight:600;height:100%;justify-content:center;width:100%}.join-request-card .details{display:flex;flex-direction:column}.join-request-card .details strong{color:#111827;font-size:1rem}.join-request-card .details small{color:#6b7280;font-size:.75rem}.join-request-card .details p{color:#4b5563;font-size:.875rem;margin:.25rem 0}.join-request-card .actions{display:flex;gap:.5rem}.join-request-card .actions .accept-btn,.join-request-card .actions .decline-btn{border:none;border-radius:.375rem;cursor:pointer;font-size:.875rem;padding:.5rem .75rem}.join-request-card .actions .accept-btn{align-items:center;background-color:#10b981;color:#fff;display:flex;gap:.25rem}.join-request-card .actions .accept-btn:hover{background-color:#059669}.join-request-card .actions .decline-btn{align-items:center;background-color:#ef4444;color:#fff;display:flex;gap:.25rem}.join-request-card .actions .decline-btn:hover{background-color:#dc2626}.incoming-requests-section p{color:#6b7280;font-size:.875rem;margin:1rem 0;text-align:center}.incoming-requests-section{background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:.5rem;margin-top:1.5rem;padding:1rem}.incoming-requests-section .join-request-card-container{display:flex;flex-wrap:wrap;gap:1rem}.join-request-card{align-items:center;background-color:#fff;border:1px solid #e5e7eb;border-radius:.5rem;box-sizing:border-box;display:flex;flex-basis:calc(50% - 1rem);flex-grow:1;flex-shrink:1;justify-content:space-between;padding:.75rem}@media (max-width:640px){.join-request-card{flex:1 1 100%}}@media (max-width:480px){.join-request-card{align-items:stretch;flex-direction:column;text-align:center}.join-request-card .actions,.join-request-card .request-info{width:100%}.join-request-card .actions{justify-content:center;margin-top:.5rem}}.student-academic-info{display:flex;flex-direction:column;gap:.25rem;margin:.5rem 0}.academic-detail{align-items:center;color:#6b7280;display:flex;font-size:.75rem;gap:.25rem}.detail-icon{color:#3b82f6;height:12px;width:12px}@media (max-width:640px){.student-academic-info{flex-direction:column}.academic-detail{font-size:.7rem}}.members-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.leader-actions{display:flex;gap:.5rem}.edit-team-btn,.manage-team-btn{align-items:center;background:#0000;border:1px solid #2d3748;border:1px solid var(--primary-color);border-radius:.375rem;color:#2d3748;color:var(--primary-color);cursor:pointer;display:flex;font-size:.875rem;gap:.25rem;padding:.375rem .75rem;transition:all .2s ease}.edit-team-btn:hover,.manage-team-btn:hover{background:#2d3748;background:var(--primary-color);color:#fff}.member-item-enhanced{align-items:center;background:#fff;border:1px solid #e2e8f0;border:1px solid var(--border-color);border-radius:.5rem;display:flex;justify-content:space-between;margin-bottom:.5rem;padding:1rem}.member-actions{align-items:center;display:flex;gap:.5rem}.make-leader-btn{align-items:center;background:#f59e0b;border:none;border-radius:.375rem;color:#fff;cursor:pointer;display:flex;font-size:.75rem;gap:.25rem;padding:.375rem .75rem}.make-leader-btn:hover{background:#d97706}.remove-member-btn{align-items:center;background:#ef4444;border:none;border-radius:.375rem;color:#fff;cursor:pointer;display:flex;font-size:.75rem;gap:.25rem;padding:.375rem .75rem}.dismiss-team-btn,.remove-member-btn:hover{background:#dc2626}.dismiss-team-btn{align-items:center;border:none;border-radius:.375rem;color:#fff;cursor:pointer;display:flex;font-size:.75rem;gap:.25rem;padding:.375rem .75rem}.dismiss-team-btn:hover{background:#b91c1c}.self-actions{align-items:center;display:flex;gap:.5rem}.self-label{color:#4a5568;color:var(--text-secondary);font-size:.875rem;font-style:italic}.crown-icon{margin-left:.25rem}.management-rules{background:#fff;border:1px solid #3b82f633;border-radius:.5rem;margin-top:1rem;padding:1rem}.management-rules h5{align-items:center;color:#3b82f6;display:flex;gap:.5rem;margin:0 0 .5rem}.management-rules ul{margin:0;padding-left:1rem}.management-rules li{color:#4b5563;font-size:.875rem;margin-bottom:.25rem}.edit-team-modal-overlay{align-items:center;background:#0009;bottom:0;display:flex;justify-content:center;left:0;opacity:0;position:fixed;right:0;top:0;transition:all .3s ease;visibility:hidden;z-index:1000}.edit-team-modal-overlay.active{opacity:1;visibility:visible}.edit-team-modal-overlay.active .edit-team-modal{transform:scale(1) translateY(0)}.edit-modal-header{align-items:center;background:#f9fafb;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:1.5rem}.edit-modal-header h3{align-items:center;color:#1f2937;display:flex;font-size:1.25rem;font-weight:600;gap:.5rem;margin:0}.edit-modal-close{background:none;border:none;border-radius:.5rem;color:#6b7280;cursor:pointer;font-size:1.5rem;padding:.5rem;transition:all .2s ease}.edit-modal-close:hover{background:#f3f4f6;color:#374151}.edit-modal-content{padding:2rem}.edit-team-modal{background:#fff;border-radius:1rem;box-shadow:0 20px 60px #0000004d;max-height:90vh;max-width:600px;overflow-y:auto;transform:scale(.9) translateY(-20px);transition:all .3s ease;width:90%}.modal-header{border-bottom:1px solid #e2e8f0;padding:1rem}.modal-content{padding:1rem}.form-group{margin-bottom:1rem}.form-group label{color:#2d3748;color:var(--text-primary)}.form-group input,.form-group select,.form-group textarea{border:1px solid #e2e8f0;border:1px solid var(--border-color);border-radius:.375rem;font-size:1rem;padding:.75rem}.modal-actions{gap:.5rem;margin-top:1rem}@media (max-width:768px){.member-item-enhanced{align-items:stretch;flex-direction:column}.member-actions,.self-actions{justify-content:center;margin-top:.5rem}.leader-actions{flex-direction:column;gap:.25rem}.edit-team-modal{margin:1rem;width:95%}}.request-item-enhanced{align-items:center;background:#fff;border:1px solid #e2e8f0;border:1px solid var(--border-color);border-radius:.5rem;display:flex;justify-content:space-between;margin-bottom:.75rem;padding:1rem;transition:all .2s ease}.request-item-enhanced:hover{border-color:#2d3748;border-color:var(--primary-color);box-shadow:0 2px 8px #0000001a}.request-info{align-items:center;display:flex;gap:.75rem}.request-details{flex:1 1}.request-details h5{color:#2d3748;color:var(--text-primary);font-size:1rem;margin:0 0 .25rem}.request-meta{gap:1rem;margin-bottom:.25rem}.request-date,.student-id,.team-name{color:#4a5568;color:var(--text-secondary);font-size:.75rem}.request-date{align-items:center;display:flex;gap:.25rem}.date-icon{color:#2d3748;color:var(--primary-color)}.request-actions{align-items:center}.status-badge{border-radius:1rem;padding:.375rem .75rem}.status-badge.pending{background:#f59e0b1a;border:1px solid #f59e0b33}.cancel-request-btn{align-items:center;background:#ef4444;border:none;border-radius:.375rem;color:#fff;cursor:pointer;display:flex;font-size:.75rem;gap:.375rem;padding:.375rem .75rem;transition:all .2s ease}.cancel-request-btn:hover{background:#dc2626;transform:translateY(-1px)}.cancel-request-btn:active{transform:translateY(0)}.cancel-icon{font-size:.75rem}.request-legend{background:#3b82f60d;border:1px solid #3b82f61a;border-radius:.5rem;margin-top:auto;padding:1rem}.request-legend h5{color:#2d3748;color:var(--text-primary);font-size:.875rem;margin:0 0 .75rem}.legend-items{gap:.5rem}.legend-item{color:#4a5568;color:var(--text-secondary);font-size:.75rem;gap:.5rem}.legend-icon{height:14px;width:14px}.legend-icon.cancelled{color:#ef4444}@media (max-width:768px){.request-item-enhanced{align-items:stretch;flex-direction:column;gap:.75rem}.request-actions{justify-content:space-between}.request-meta{flex-direction:column;gap:.25rem}.legend-items{gap:.375rem}}.form-management-section{background:#3b82f60d;border:1px solid #3b82f61a;border-radius:.5rem;margin-top:1.5rem;padding:1rem}.form-status{align-items:center;color:#3b82f6;display:flex;font-size:.875rem;gap:.5rem;margin-bottom:1rem}.form-actions{gap:.75rem}.info-btn{align-items:center;background:#f59e0b;border:none;border-radius:.375rem;color:#fff;cursor:pointer;display:flex;font-size:.875rem;gap:.5rem;padding:.5rem 1rem;transition:all .2s ease}.info-btn:hover:not(:disabled){background:#d97706}.info-btn:disabled{background:#9ca3af;cursor:not-allowed}.persistence-notice{background:#22c55e1a;border:1px solid #22c55e33;border-radius:.5rem;font-size:.875rem;gap:.5rem;margin-bottom:1rem;padding:.75rem}.persistence-notice,.request-persistence{align-items:center;color:#22c55e;display:flex}.request-persistence{font-size:.75rem;gap:.25rem;margin-top:.25rem}.persistence-icon{color:#22c55e}.persistence-note{align-items:center;color:#22c55e;display:flex;font-size:.875rem;gap:.5rem;margin-top:.5rem}@media (max-width:768px){.form-actions{flex-direction:column}.form-management-section{padding:.75rem}}.modal-overlay{background-color:#0009;opacity:0;transition:opacity .3s ease,visibility .3s ease;visibility:hidden}.modal-overlay.active{opacity:1;visibility:visible}.modal-content{background:#fff;border-radius:8px;box-shadow:0 10px 30px #0000004d;max-height:80vh;max-width:500px;opacity:0;transform:translateY(-20px);transition:opacity .3s ease,transform .3s ease;width:90%}.modal-overlay.active .modal-content{opacity:1;transform:translateY(0)}.modal-header h3{font-size:18px}.modal-close{align-items:center;background:none;border:none;border-radius:4px;color:#6b7280;cursor:pointer;display:flex;font-size:24px;height:30px;justify-content:center;padding:0;transition:background-color .2s;width:30px}.modal-close:hover{background-color:#f3f4f6;color:#374151}.modal-body{padding:20px 24px}.modal-body p{color:#4b5563;line-height:1.5;margin:0 0 16px}.invitation-details{background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;margin-top:12px;padding:16px}.invitation-details strong{color:#1f2937;font-size:16px}.invitation-details span{color:#6b7280;font-size:14px}.modal-footer{gap:12px;padding:16px 24px 20px}.btn-cancel{background-color:#f3f4f6;padding:8px 16px}.btn-cancel:hover{background-color:#e5e7eb;border-color:#9ca3af}.btn-send{background-color:#3b82f6;border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:500;padding:8px 16px;transition:background-color .2s}.btn-send:hover{background-color:#2563eb}.btn-ok{background-color:#3b82f6;border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:500;padding:8px 24px;transition:background-color .2s}.btn-ok:hover{background-color:#2563eb}.modal-success .modal-header h3{color:#059669}.modal-error .modal-header h3{color:#dc2626}.modal-warning .modal-header h3{color:#d97706}@media (max-width:640px){.modal-content{margin:20px;width:95%}.modal-footer{flex-direction:column}.modal-footer button{width:100%}}.chat-view{background:#f8f9fa;height:calc(100vh - 100px)}.chat-team-info h3{color:#1f2937;margin:0}.chat-actions{align-items:center;display:flex;flex-direction:row;flex-shrink:0;gap:.75rem}.team-info span{background:#f3f4f6;border-radius:1rem;color:#6b7280;font-size:.875rem;padding:.25rem .75rem}.refresh-chat-btn{align-items:center;background:#3b82f6;border:none;border-radius:.5rem;color:#fff;cursor:pointer;display:flex;font-size:.875rem;gap:.5rem;padding:.5rem 1rem}.refresh-chat-btn:hover{background:#2563eb}.refresh-chat-btn:disabled{cursor:not-allowed;opacity:.6}.team-members-bar{background:#f9fafb;border-bottom:1px solid #e5e7eb;padding:.75rem 1rem}.members-list{display:flex;gap:1rem;overflow-x:auto}.member-indicator{align-items:center;display:flex;font-size:.875rem;gap:.5rem;white-space:nowrap}.member-name{color:#374151;font-weight:500}.chat-error{align-items:center;background:#fef2f2;border:1px solid #fecaca;color:#dc2626;display:flex;font-size:.875rem;gap:.5rem;padding:.75rem 1rem}.chat-error button{background:none;border:none;color:#dc2626;cursor:pointer;margin-left:auto}.chat-messages{display:flex;flex-direction:column;gap:.75rem}.loading-messages,.no-messages{align-items:center;color:#6b7280;display:flex;flex-direction:column;gap:1rem;height:100%;justify-content:center}.chat-view{height:calc(100vh - 3rem);max-height:calc(100vh - 3rem)}.chat-messages{height:auto;max-height:none}.chat-container,.chat-messages-wrapper{height:calc(100% - 80px);max-height:calc(100% - 80px);overflow-y:auto}.chat-icon{color:#d1d5db;font-size:3rem}.message{max-width:80%}.message-avatar{flex-shrink:0}.message-avatar-wrapper{border-radius:50%;overflow:hidden;position:relative}.message-avatar-img{border-radius:50%;object-fit:cover}.message-avatar-fallback{align-items:center;background:#6b7280;border-radius:50%;color:#fff;font-weight:600;justify-content:center}.message-content{gap:.25rem}.message-sender{color:#6b7280;display:flex;font-size:.75rem;gap:.5rem}.sender-name{font-weight:500}.message-bubble{word-wrap:break-word;border-radius:1rem;max-width:100%}.message.sent .message-bubble{background:#3b82f6}.message.received .message-bubble{border:1px solid #e5e7eb;color:#374151}.text-message{line-height:1.4}.edited-indicator{font-size:.75rem;font-style:italic;margin-left:.5rem;opacity:.7}.file-message{gap:.5rem}.file-message a{color:inherit;text-decoration:underline}.file-size{opacity:.7}.message-timestamp{align-self:flex-end;color:#9ca3af;font-size:.75rem}.message.sent .message-timestamp{align-self:flex-start}.chat-input{border-top:1px solid #e5e7eb}.input-group input{border:1px solid #d1d5db;border-radius:1.5rem;font-size:.875rem;outline:none;padding:.75rem 1rem;resize:none}.input-group input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.file-upload label{align-items:center;background:#f3f4f6;border-radius:50%;color:#6b7280;cursor:pointer;display:flex;height:40px;justify-content:center;width:40px}.file-upload label:hover{background:#e5e7eb}.send-btn{background:#3b82f6;height:40px;width:40px}.send-btn:hover:not(:disabled){background:#2563eb}.send-btn:disabled{opacity:.6}@media (max-width:768px){.chat-header{flex-direction:column;gap:1rem;padding:.75rem}.team-info{justify-content:center}.message{max-width:90%}.members-list{justify-content:center}}.call-modal-overlay{align-items:center;background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:2000}.call-modal{background:#1a202c;background:var(--primary-dark);border-radius:.75rem;border-radius:var(--radius-xl);box-shadow:0 10px 15px -3px #0000001a;box-shadow:var(--shadow-lg);display:flex;flex-direction:column;height:90vh;max-width:1400px;overflow:hidden;width:90vw}.call-modal-header{background:#2d3748;background:var(--primary-color);flex-shrink:0;justify-content:space-between;padding:1rem 1.5rem}.call-modal-header,.call-modal-header h3{align-items:center;color:#fff;color:var(--white);display:flex}.call-modal-header h3{font-size:1.1rem;gap:.75rem;margin:0}.close-call-btn{align-items:center;background:#e53e3e;background:var(--danger-color);border:none;border-radius:.375rem;border-radius:var(--radius-md);color:#fff;cursor:pointer;display:flex;font-weight:600;gap:.5rem;padding:.5rem 1rem;transition:background-color .2s}.close-call-btn:hover{background:#c53030}.jitsi-meet-container{flex-grow:1;height:100%;width:100%}.call-waiting{align-items:center;color:#fff;color:var(--white);display:flex;flex-direction:column;gap:1rem;height:100%;justify-content:center}.call-waiting .spinning{animation:spin 1.5s linear infinite;font-size:2rem}.chat-actions .call-btn{align-items:center;background:#38a169;background:var(--success-color);border:none;border-radius:.375rem;border-radius:var(--radius-md);color:#fff;cursor:pointer;display:flex;gap:.5rem;padding:.5rem 1rem;transition:background-color .2s}.chat-actions .call-btn:hover{background:#2f855a}.security-section{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-top:2rem;padding:2rem}.security-section h3{color:#1f2937;font-size:1.25rem;font-weight:600;margin:0 0 1.5rem}.security-card{border:1px solid #e5e7eb;border-radius:8px;padding:1.5rem}.security-item{align-items:center;display:flex;justify-content:space-between}.security-info h4{color:#1f2937;font-size:1rem;font-weight:500;margin:0 0 .5rem}.security-info p{color:#6b7280;font-size:.875rem;margin:0}.change-password-btn{align-items:center;background:#3b82f6;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-weight:500;gap:.5rem;padding:.75rem 1.5rem;transition:background-color .2s}.change-password-btn:hover{background:#2563eb}.password-modal{max-width:500px;width:90%}.password-form{padding:0}.form-group label{font-weight:500;margin-bottom:.5rem}.form-group input{border:1px solid #d1d5db;border-radius:6px;font-size:.875rem;padding:.75rem 1rem;transition:border-color .2s,box-shadow .2s;width:100%}.form-group input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.form-group input.error{border-color:#ef4444;box-shadow:0 0 0 3px #ef44441a}.error-message,.password-requirements{margin-top:.5rem}.profile-content{background:#f8fafc;min-height:100vh;padding-bottom:2rem}.profile-header{background:linear-gradient(135deg,#667eea,#764ba2);justify-content:center;min-height:40vh;position:relative}.profile-banner{padding:2rem 0}.banner-background{background:linear-gradient(135deg,#667eeae6,#764ba2e6);bottom:0;left:0;position:absolute;right:0;top:0;z-index:1}.banner-background:before{animation:float 20s ease-in-out infinite;background:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cdefs%3E%3Cpattern id='a' width='100' height='100' patternUnits='userSpaceOnUse'%3E%3Ccircle cx='25' cy='25' r='1' fill='%23fff' opacity='.1'/%3E%3Ccircle cx='75' cy='75' r='1' fill='%23fff' opacity='.1'/%3E%3Ccircle cx='50' cy='10' r='1' fill='%23fff' opacity='.1'/%3E%3Ccircle cx='10' cy='60' r='1' fill='%23fff' opacity='.1'/%3E%3Ccircle cx='90' cy='40' r='1' fill='%23fff' opacity='.1'/%3E%3C/pattern%3E%3C/defs%3E%3Cpath fill='url(%23a)' d='M0 0h100v100H0z'/%3E%3C/svg%3E");content:"";height:200%;left:-50%;position:absolute;top:-50%;width:200%}@keyframes float{0%,to{transform:translate(0) rotate(0deg)}50%{transform:translate(-20px,-20px) rotate(180deg)}}.profile-main-info{align-items:center;margin:0 auto;max-width:1200px;z-index:2}.avatar-container{flex-shrink:0}.profile-avatar{transition:transform .3s ease}.profile-avatar:hover{transform:scale(1.05)}.profile-avatar.fallback{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:4px solid #fff;border-radius:50%;box-shadow:0 8px 32px #00000026;color:#fff;display:flex;font-size:3rem;font-weight:600;height:120px;justify-content:center;width:120px}.password-requirements small{color:#6b7280;font-size:.75rem}.password-requirements ul{margin:.5rem 0 0 1rem;padding:0}.password-requirements li{margin-bottom:.25rem}.modal-footer{gap:1rem;margin-top:2rem;padding-top:1.5rem}.btn-cancel{background:#f3f4f6;border:1px solid #d1d5db;border-radius:6px;color:#374151;cursor:pointer;font-weight:500;padding:.75rem 1.5rem;transition:all .2s}.btn-cancel:hover:not(:disabled){background:#e5e7eb}.btn-primary{background:#3b82f6;border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:500;padding:.75rem 1.5rem;transition:background-color .2s}.btn-primary:hover:not(:disabled){background:#2563eb}.btn-cancel:disabled,.btn-primary:disabled{cursor:not-allowed;opacity:.6}@media (max-width:768px){.security-item{align-items:flex-start;flex-direction:column;gap:1rem}.change-password-btn{justify-content:center;width:100%}.modal-footer{flex-direction:column}.btn-cancel,.btn-primary{width:100%}}.profile-content{margin:0 auto;max-width:1200px;padding:0}.profile-banner{margin-bottom:2rem;position:relative}.banner-background{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:0 0 1rem 1rem;height:200px}.profile-main-info{align-items:flex-end;display:flex;gap:2rem;margin-top:-60px;padding:0 2rem;position:relative}.avatar-wrapper{display:inline-block}.profile-avatar{box-shadow:0 8px 32px #00000026;height:120px;width:120px}.edit-btn{align-items:center;background:#2d3748;background:var(--primary-color);border:none;border-radius:50%;bottom:5px;box-shadow:0 2px 8px #00000026;color:#fff;cursor:pointer;display:flex;height:36px;justify-content:center;position:absolute;right:5px;transition:all .2s ease;width:36px}.edit-btn:hover{background:#1a202c;background:var(--primary-dark);transform:scale(1.1)}.online-indicator{background:#10b981;border:3px solid #fff;border-radius:50%;height:20px;position:absolute;right:8px;top:8px;width:20px}.profile-info{color:#fff;flex:1 1;margin-bottom:1rem}.profile-name{color:#fff;font-size:2rem;font-weight:700;margin:0 0 .5rem}.profile-meta{display:flex;flex-wrap:wrap;gap:1.5rem;margin-bottom:1rem}.profile-meta span{align-items:center;display:flex;font-size:.875rem;gap:.5rem;opacity:.9}.profile-status.active{color:#10b981;font-weight:600}.quick-stats{display:flex;gap:2rem}.stat-item{text-align:center}.stat-value{font-size:1.5rem;line-height:1}.stat-label{font-size:.75rem;margin-top:.25rem;opacity:.8}.profile-actions{display:flex;gap:1rem;margin-bottom:1rem}.profile-actions .btn{align-items:center;border-radius:.5rem;display:flex;font-weight:600;gap:.5rem;padding:.75rem 1.5rem;transition:all .2s ease}.profile-body{padding:0 2rem}.profile-grid{grid-gap:1.5rem;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(350px,1fr))}.profile-card{background:#fff;border:1px solid #e2e8f0;border:1px solid var(--border-color);border-radius:1rem;overflow:hidden;transition:all .2s ease}.profile-card:hover{box-shadow:0 8px 32px #0000001a;transform:translateY(-2px)}.card-header{border-bottom:1px solid #e2e8f0;border-bottom:1px solid var(--border-color);padding:1.5rem 1.5rem 1rem}.card-header h3{align-items:center;color:#2d3748;color:var(--text-primary);display:flex;font-size:1.125rem;font-weight:600;gap:.75rem;margin:0}.card-icon{color:#2d3748;color:var(--primary-color);font-size:1.25rem}.edit-section-btn,.view-team-btn{background:none;border:none;border-radius:.375rem;color:#4a5568;color:var(--text-secondary);cursor:pointer;padding:.5rem;transition:all .2s ease}.edit-section-btn:hover,.view-team-btn:hover{background:#edf2f7;background:var(--gray-100);color:#2d3748;color:var(--primary-color)}.card-content{padding:1.5rem}.detail-item{align-items:flex-start;border-bottom:1px solid #edf2f7;border-bottom:1px solid var(--gray-100);justify-content:space-between;padding:.75rem 0}.detail-item:last-child{border-bottom:none}.detail-label{align-items:center;color:#4a5568;color:var(--text-secondary);display:flex;gap:.5rem;min-width:120px}.detail-value{color:#2d3748;color:var(--text-primary);flex:1 1;text-align:right}.cgpa-value.excellent{color:#10b981}.cgpa-value.good{color:#f59e0b}.cgpa-value.average{color:#ef4444}.cgpa-bar,.progress-bar{background:#e2e8f0;background:var(--gray-200);border-radius:2px;height:4px;margin-top:.5rem;overflow:hidden;width:100px}.cgpa-fill,.progress-fill{background:linear-gradient(90deg,#10b981,#059669);height:100%;transition:width .3s ease}.email-link,.phone-link{color:#2d3748;color:var(--primary-color);text-decoration:none}.email-link:hover,.phone-link:hover{text-decoration:underline}.not-provided{color:#718096;color:var(--text-muted);font-style:italic}.team-info{text-align:center}.team-name{font-size:1.125rem;margin-bottom:.5rem}.team-meta{color:#4a5568;color:var(--text-secondary);font-size:.875rem;justify-content:center;margin-bottom:1rem}.skills-tags{margin-top:.5rem}.skill-tag{background:#edf2f7;background:var(--gray-100);border-radius:1rem;color:#4a5568;color:var(--text-secondary)}.no-skills{color:#718096;color:var(--text-muted)}.bio-section{border-top:1px solid #edf2f7;border-top:1px solid var(--gray-100);margin-top:1rem;padding-top:1rem}.bio-label{color:#4a5568;color:var(--text-secondary);font-weight:500;margin-bottom:.5rem}.bio-content{color:#2d3748;color:var(--text-primary);line-height:1.5}.activity-list{space-y:1rem}.activity-item{display:flex;gap:1rem;padding:.75rem 0}.activity-icon{align-items:center;background:#edf2f7;background:var(--gray-100);border-radius:50%;color:#2d3748;color:var(--primary-color);display:flex;flex-shrink:0;height:40px;justify-content:center;width:40px}.activity-content{flex:1 1}.activity-title{color:#2d3748;color:var(--text-primary);font-weight:500}.activity-time{color:#4a5568;color:var(--text-secondary);font-size:.875rem;margin-top:.25rem}@media (max-width:768px){.profile-main-info{align-items:center;flex-direction:column;padding:0 1rem;text-align:center}.profile-meta{justify-content:center}.profile-grid{grid-template-columns:1fr;padding:0 1rem}.detail-item{flex-direction:column;gap:.5rem}.detail-value{text-align:left}}.sidebar.collapsed .sidebar-header h1{cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);transition:all var(--transition)}.sidebar.collapsed .sidebar-header h1:hover:before{box-shadow:0 4px 12px #2d374840}.sidebar.collapsed .sidebar-header h1:active:before{transform:scale(.95);transition:all .1s ease}.sidebar.collapsed .sidebar-collapse-btn{display:none}.sidebar:not(.collapsed) .sidebar-header h1{cursor:default}.sidebar{-webkit-overflow-scrolling:touch;background:#fff;background:var(--white);border-right:1px solid #e2e8f0;border-right:1px solid var(--border-color);box-shadow:0 1px 3px 0 #0000001a;box-shadow:var(--shadow-sm);color:#2d3748;color:var(--text-primary);display:flex;flex-direction:column;height:100%;overflow-y:auto;padding:1.5rem;position:fixed;transform:translateX(-100%);transition:transform .3s cubic-bezier(.4,0,.2,1),width .3s cubic-bezier(.4,0,.2,1);transition:transform var(--transition),width var(--transition);width:280px;width:var(--sidebar-width);z-index:1001}.sidebar-header{border-bottom:1px solid #e2e8f0;border-bottom:1px solid var(--border-color);margin-bottom:1rem;padding-bottom:1.5rem;position:relative}.sidebar-header h1{align-items:center;display:flex;font-size:1.5rem;gap:.75rem;transition:opacity .3s cubic-bezier(.4,0,.2,1);transition:opacity var(--transition);white-space:nowrap}.navigation{display:flex;flex:1 1;flex-direction:column;gap:.25rem}.navigation button{align-items:center;background:none;border:none;border-radius:.5rem;border-radius:var(--radius-lg);color:#4a5568;color:var(--text-secondary);cursor:pointer;display:flex;font-weight:500;gap:1rem;padding:12px 16px;position:relative;text-align:left;transition:all .2s ease;width:100%}.navigation button:hover:not(.active){background:#edf2f7;background:var(--gray-100);color:#2d3748;color:var(--text-primary)}.navigation button.active{background:#e2e8f0;background:var(--gray-200);color:#2d3748;color:var(--text-primary);font-weight:600}.navigation button.active:before{background:#2d3748;background:var(--primary-color);border-radius:0 2px 2px 0;bottom:20%;content:"";left:0;position:absolute;top:20%;width:3px}.navigation button svg{flex-shrink:0;font-size:1.2rem}.navigation button span{overflow:hidden;transition:opacity .3s cubic-bezier(.4,0,.2,1);transition:opacity var(--transition);white-space:nowrap}.sidebar-footer{margin-top:auto;padding-top:1rem}.logout-btn,.notification-btn{align-items:center;background:none;border:none;border-radius:.375rem;border-radius:var(--radius-md);color:#4a5568;color:var(--text-secondary);cursor:pointer;display:flex;gap:1rem;margin-bottom:.5rem;padding:.75rem;transition:all .2s ease;width:100%}.logout-btn:hover,.notification-btn:hover{background:#edf2f7;background:var(--gray-100)}.notification-count{background:#e53e3e;background:var(--danger-color);border-radius:50%;color:#fff;font-size:.75rem;height:20px;width:20px}.mobile-menu-btn,.notification-count{align-items:center;display:flex;justify-content:center}.mobile-menu-btn{background:#fff;background:var(--white);border:1px solid #e2e8f0;border:1px solid var(--border-color);border-radius:.5rem;border-radius:var(--radius-lg);box-shadow:0 1px 3px 0 #0000001a;box-shadow:var(--shadow-sm);color:#2d3748;color:var(--text-primary);cursor:pointer;font-size:1.2rem;height:50px;left:1rem;padding:.75rem;position:fixed;top:1rem;transition:all .3s cubic-bezier(.4,0,.2,1);transition:all var(--transition);width:50px;z-index:1002}.mobile-menu-btn:hover{background:#edf2f7;background:var(--gray-100)}.mobile-overlay{background:#00000080;bottom:0;left:0;opacity:0;position:fixed;right:0;top:0;transition:all .3s cubic-bezier(.4,0,.2,1);transition:all var(--transition);visibility:hidden;z-index:1000}.mobile-overlay.active{opacity:1;visibility:visible}.sidebar.mobile-open{transform:translateX(0)}.main-content{padding-top:5rem}.chat-view{background:#fff;background:var(--white);border:1px solid #e2e8f0;border:1px solid var(--border-color);border-radius:.75rem;border-radius:var(--radius-xl);box-shadow:0 1px 3px 0 #0000001a;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;height:calc(100vh - 6rem);margin:0;max-width:100%;overflow:hidden}.chat-header{align-items:center;background:#f9fafb;border-bottom:1px solid #e5e7eb;box-shadow:0 1px 3px #0000001a;display:flex;justify-content:space-between;padding:1rem 1.5rem}.chat-team-info{flex:1 1}.chat-messages{background:#f7fafc;background:var(--gray-50);flex:1 1;overflow-y:auto;padding:1rem}.message{display:flex;gap:.75rem;margin-bottom:1rem;max-width:90%}.message.sent{align-self:flex-end;flex-direction:row-reverse}.message.received{align-self:flex-start}.message-content{display:flex;flex-direction:column}.message-bubble{border-radius:.75rem;border-radius:var(--radius-xl);line-height:1.5;padding:.75rem 1rem}.message.sent .message-bubble{background:#2d3748;background:var(--primary-color);border-bottom-right-radius:.25rem;border-bottom-right-radius:var(--radius-sm);color:#fff;color:var(--white)}.message.received .message-bubble{background:#fff;background:var(--white);border:1px solid #e2e8f0;border:1px solid var(--border-color);border-bottom-left-radius:.25rem;border-bottom-left-radius:var(--radius-sm)}.chat-input{background:#fff;background:var(--white);border-top:1px solid #e2e8f0;border-top:1px solid var(--border-color);padding:1rem}.input-group{align-items:center}.input-group input{border:1px solid #e2e8f0;border:1px solid var(--border-color);flex:1 1;font-size:1rem;padding:.75rem}.file-upload label,.input-group input,.send-btn{border-radius:.5rem;border-radius:var(--radius-lg)}.file-upload label,.send-btn{align-items:center;cursor:pointer;display:flex;height:44px;justify-content:center;transition:background-color .2s;width:44px}.send-btn{background:#2d3748;background:var(--primary-color);color:var(--white)}.file-upload label{background:#edf2f7;background:var(--gray-100);border:1px solid #e2e8f0;border:1px solid var(--border-color)}.tutorial-overlay{align-items:center;background:#000c;bottom:0;display:flex;justify-content:center;left:0;padding:1rem;position:fixed;right:0;top:0;z-index:9999}.tutorial-content{background:#fff;background:var(--white);border-radius:1.5rem;box-shadow:0 10px 15px -3px #0000001a;box-shadow:var(--shadow-lg);max-height:90vh;max-width:90%;overflow-y:auto;padding:2rem;text-align:center;width:600px}.tutorial-content h2{font-size:1.5rem;margin-bottom:1.5rem}.tutorial-steps{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:1fr;margin:2rem 0}.step{background:#f7fafc;background:var(--gray-50);border:1px solid #e2e8f0;border:1px solid var(--border-color);border-radius:1rem;padding:1.5rem}.step .icon{align-items:center;border-radius:50%;display:flex;font-size:1.5rem;height:50px;justify-content:center;margin:0 auto 1rem;width:50px}.close-tutorial,.step .icon{background:#2d3748;background:var(--primary-color);color:#fff}.close-tutorial{border:none;border-radius:.5rem;border-radius:var(--radius-lg);cursor:pointer;font-size:1rem;font-weight:600;padding:1rem 2rem}.create-team-container,.join-team-container{padding:1rem}.create-team-content,.join-team-content{gap:2rem;grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.faculty-grid,.materials-grid,.students-grid,.team-grid{gap:1rem;grid-template-columns:1fr}.filter-controls,.search-controls,.search-filter-container{flex-direction:column;gap:1rem}.filter-select,.form-input,.form-select,.form-textarea,.search-box input{width:100%}.stats{gap:1rem;grid-template-columns:1fr 1fr}.stat-card{padding:1rem}.header h2,.stat-card p{font-size:1.5rem}@media (min-width:768px){.main-content{padding-top:1.5rem}.mobile-menu-btn,.mobile-overlay{display:none}.sidebar{transform:translateX(0)}.main-content{margin-left:280px;margin-left:var(--sidebar-width)}.sidebar.collapsed{width:80px;width:var(--sidebar-collapsed-width)}.sidebar.collapsed .logout-btn span,.sidebar.collapsed .navigation button span,.sidebar.collapsed .notification-btn span,.sidebar.collapsed .sidebar-header h1{opacity:0;width:0}.main-content.collapsed{margin-left:80px;margin-left:var(--sidebar-collapsed-width)}.collapse-btn{align-items:center;background:#fff;background:var(--white);border:1px solid #e2e8f0;border:1px solid var(--border-color);border-radius:50%;box-shadow:0 1px 3px 0 #0000001a;box-shadow:var(--shadow-sm);color:#2d3748;color:var(--text-primary);cursor:pointer;display:flex;height:30px;justify-content:center;position:absolute;right:-15px;top:50%;transform:translateY(-50%);width:30px}.tutorial-steps{grid-template-columns:repeat(3,1fr)}.faculty-grid,.materials-grid,.students-grid,.team-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.stats{grid-template-columns:repeat(4,1fr)}.chat-view{height:calc(100vh - 4rem);margin:0 auto;max-width:800px}}@media (min-width:1200px){.create-team-content{grid-template-columns:1fr 400px}.preview-section{order:1}}.fade-in{animation:fadeIn .4s ease-out}.spinner{animation:spin 1s linear infinite;border:3px solid #2d37484d;border-radius:50%;border-top:3px solid var(--text-primary);height:20px;width:20px}.loading-screen{background:#f7fafc;background:var(--gray-50)}.incoming-requests{background:#fff;background:var(--white);border:1px solid #e2e8f0;border:1px solid var(--border-color);border-radius:.75rem;border-radius:var(--radius-xl);box-shadow:0 1px 3px 0 #0000001a;box-shadow:var(--shadow-sm);margin-bottom:2rem;padding:1rem}.incoming-requests h3{align-items:center;color:#2d3748;color:var(--text-primary);display:flex;font-size:1.25rem;font-weight:600;gap:.75rem;margin-bottom:1.5rem}.refresh-btn{background:#2d3748;background:var(--primary-color);border-radius:.5rem;border-radius:var(--radius-lg);font-weight:500;margin-left:auto;padding:.5rem 1rem}.refresh-btn:hover{background:#1a202c;background:var(--primary-dark)}.request-card{background:var(--white);border:1px solid #e2e8f0;border-radius:.75rem;border-radius:var(--radius-xl);box-shadow:0 1px 3px 0 #0000001a;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:1rem;margin-bottom:1rem;transition:all .2s ease}.request-card:hover{border-color:#2d3748;border-color:var(--primary-color);box-shadow:0 4px 6px -1px #0000001a;box-shadow:var(--shadow-md)}.request-info{flex:1 1}.request-info h4{color:#2d3748;color:var(--text-primary);font-size:1.125rem;font-weight:600;line-height:1.4;margin:0 0 1rem}.request-info p{color:#4a5568;color:var(--text-secondary);font-size:.9rem;line-height:1.5;margin:.5rem 0}.request-info p strong{color:#2d3748;color:var(--text-primary);font-weight:600}.request-actions{gap:.75rem;margin-top:1rem}.primary-btn,.secondary-btn{align-items:center;border-radius:.5rem;border-radius:var(--radius-lg);cursor:pointer;display:flex;flex:1 1;font-size:.9rem;font-weight:600;gap:.5rem;justify-content:center;padding:.75rem 1rem;transition:all .2s ease}.primary-btn{background:#38a169;background:var(--success-color)}.primary-btn:hover{background:#2f855a;transform:translateY(-1px)}.secondary-btn{background:#fff;background:var(--white);border:1px solid #e53e3e;border:1px solid var(--danger-color);color:#e53e3e;color:var(--danger-color)}.secondary-btn:hover{background:#e53e3e;background:var(--danger-color);color:#fff;transform:translateY(-1px)}@media (max-width:768px){.sidebar-header h1{margin-top:2vh}.incoming-requests{border-left:none;border-radius:0;border-right:none;margin:0 -1rem 2rem;padding:1rem}.incoming-requests h3{align-items:flex-start;flex-direction:column;font-size:1.125rem;gap:1rem}.refresh-btn{justify-content:center;margin-left:0;width:100%}.request-card{border-radius:.5rem;border-radius:var(--radius-lg);margin:0 0 1rem;padding:1.25rem}.request-info h4{font-size:1rem;line-height:1.3}.request-info p{font-size:.875rem;margin:.4rem 0}.request-actions{flex-direction:column;gap:.5rem;margin-top:1.25rem}.primary-btn,.secondary-btn{font-size:.9rem;padding:.875rem 1rem;width:100%}}@media (max-width:480px){.sidebar-header h1{margin-top:4vh}.incoming-requests{margin:0 -.5rem 1.5rem;padding:.75rem}.incoming-requests h3{font-size:1rem;gap:.75rem}.refresh-btn{font-size:.875rem;padding:.625rem .875rem}.request-card{gap:.75rem;padding:1rem}.request-info h4{font-size:.95rem;margin-bottom:.75rem}.request-info p{font-size:.8rem;margin:.3rem 0}.request-actions{gap:.4rem;margin-top:1rem}.primary-btn,.secondary-btn{font-size:.85rem;padding:.75rem .875rem}.primary-btn svg,.secondary-btn svg{font-size:.875rem}}@media (max-width:360px){.sidebar-header h1{margin-top:6vh}.incoming-requests{margin:0 -.25rem 1rem;padding:.5rem}.incoming-requests h3{font-size:.9rem}.request-card{padding:.75rem}.request-info h4{font-size:.9rem;line-height:1.2}.request-info p{font-size:.75rem}.primary-btn,.secondary-btn{font-size:.8rem;padding:.625rem .75rem}}@media (max-width:768px){.sidebar.collapsed .sidebar-header h1:before{align-items:center;background:#fff;background:var(--white);border:2px solid #2d3748;border:2px solid var(--primary-color);border-radius:50%;box-shadow:0 1px 3px 0 #0000001a;box-shadow:var(--shadow-sm);color:#2d3748;color:var(--primary-color);content:"SM";display:inline-flex;font-size:1.2rem;font-weight:700;height:48px;justify-content:center;margin-top:5vh;transition:all .3s cubic-bezier(.4,0,.2,1);transition:all var(--transition);width:48px}.stats{gap:.75rem;grid-template-columns:repeat(2,1fr)}.stat-card{padding:1rem .75rem}.stat-card h3{font-size:.875rem}.stat-card p{font-size:1.25rem}}@media (max-width:480px){.sidebar.collapsed .sidebar-header h1:before{align-items:center;background:#fff;background:var(--white);border:2px solid #2d3748;border:2px solid var(--primary-color);border-radius:50%;box-shadow:0 1px 3px 0 #0000001a;box-shadow:var(--shadow-sm);color:#2d3748;color:var(--primary-color);content:"SM";display:inline-flex;font-size:1.2rem;font-weight:700;height:48px;justify-content:center;margin-top:7vh;transition:all .3s cubic-bezier(.4,0,.2,1);transition:all var(--transition);width:48px}.stats{gap:.5rem;grid-template-columns:1fr}.stat-card{align-items:center;display:flex;justify-content:space-between;padding:.75rem;text-align:left}.stat-card h3{font-size:.8rem;margin-bottom:0}.stat-card p{font-size:1.125rem;margin:0}}.sidebar.collapsed .sidebar-header h1{background:none;margin:0;opacity:1;padding:0;width:auto}.sidebar.collapsed .sidebar-header h1:before{align-items:center;background:#fff;background:var(--white);border:2px solid #2d3748;border:2px solid var(--primary-color);border-radius:50%;box-shadow:0 1px 3px 0 #0000001a;box-shadow:var(--shadow-sm);color:#2d3748;color:var(--primary-color);content:"SM";display:inline-flex;font-size:1.2rem;font-weight:700;height:48px;justify-content:center;transition:all .3s cubic-bezier(.4,0,.2,1);transition:all var(--transition);width:48px}.sidebar.collapsed .sidebar-header h1:hover:before{background:#2d3748;background:var(--primary-color);color:#fff;color:var(--white);transform:scale(1.05)}.sidebar.collapsed{overflow-x:hidden;overflow-y:auto;padding:1rem .5rem;width:80px;width:var(--sidebar-collapsed-width)}.sidebar.collapsed .sidebar-header{overflow:hidden;padding:.75rem .5rem 1rem}.sidebar.collapsed .navigation{overflow-x:hidden;overflow-y:visible}.sidebar.collapsed .navigation button span{opacity:0;overflow:hidden;white-space:nowrap;width:0}.sidebar.collapsed .logout-btn span,.sidebar.collapsed .notification-btn span{opacity:0;overflow:hidden;width:0}.sidebar.collapsed .sidebar-footer{overflow-x:hidden;padding:1rem 0 0}.sidebar.collapsed .navigation button{justify-content:center;padding:12px 8px}.sidebar.collapsed .logout-btn,.sidebar.collapsed .notification-btn{justify-content:center;padding:.75rem 8px}.sidebar.collapsed .notification-count{display:none}.grades-page{margin:0 auto;max-width:1000px;padding:2rem}.grades-title{align-items:center;color:#2d3748;color:var(--text-primary);display:flex;font-size:2rem;margin-bottom:2rem}.grades-cards{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.grade-card{background:var(--white);border:1px solid #e2e8f0;border:1px solid var(--border-color);border-radius:.75rem;border-radius:var(--radius-xl);box-shadow:0 1px 3px 0 #0000001a;box-shadow:var(--shadow-sm);text-align:center;transition:transform .3s cubic-bezier(.4,0,.2,1),box-shadow .3s cubic-bezier(.4,0,.2,1);transition:transform var(--transition),box-shadow var(--transition)}.grade-card:hover{box-shadow:0 4px 6px -1px #0000001a;box-shadow:var(--shadow-md);transform:translateY(-4px)}.grade-card h2{color:#4a5568;color:var(--text-secondary);font-size:1.25rem;margin-bottom:1rem}.grade-value{color:#2d3748;color:var(--primary-color);font-size:3rem;font-weight:700;margin-bottom:1rem}.grade-scale{align-items:center;color:#718096;color:var(--text-muted);display:flex;font-size:.875rem;gap:.5rem}.scale-bar{background:#e2e8f0;background:var(--gray-200);border-radius:4px;flex:1 1;height:8px;overflow:hidden}.fill{background:#38a169;background:var(--success-color);height:100%;transition:width .4s ease}.phase-A .fill{background:#38a169}.phase-B .fill{background:#3182ce}.phase-C .fill{background:#d69e2e}@media (max-width:768px){.grades-page{padding:1rem}.grades-title{font-size:1.5rem}.grade-value{font-size:2.25rem}}.team-card:before{background:linear-gradient(90deg,#667eea,#764ba2);content:"";height:4px;left:0;position:absolute;right:0;top:0}.team-card:hover{box-shadow:0 8px 32px #0000001f;transform:translateY(-8px)}.team-card h3{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text;color:#1a202c;font-size:1.5rem;font-weight:700;line-height:1.3;margin:0 0 1.5rem}.team-card p{border-bottom:1px solid #f7fafc;color:#4a5568;font-size:.95rem;line-height:1.6;margin:0 0 1rem;padding:.75rem 0}.team-card p:last-of-type{border-bottom:none;margin-bottom:1.5rem}.team-card p strong{color:#2d3748;display:inline-block;font-weight:600;margin-right:.5rem;min-width:120px}.team-actions{border-top:1px solid #e2e8f0;margin-top:2rem;padding-top:1.5rem}.primary-btn,.team-actions{display:flex;justify-content:center}.primary-btn{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:12px;box-shadow:0 4px 12px #667eea4d;color:#fff;cursor:pointer;font-size:.9rem;font-weight:600;gap:.5rem;min-width:160px;padding:.875rem 2rem;text-decoration:none;transition:all .2s ease}.primary-btn:hover{background:linear-gradient(135deg,#5a67d8,#6b46c1);box-shadow:0 6px 20px #667eea66;transform:translateY(-2px)}.primary-btn:active{box-shadow:0 2px 8px #667eea4d;transform:translateY(0)}.primary-btn svg{font-size:1.1rem}@media (max-width:768px){.team-card{margin:1rem;max-width:none;padding:1.5rem}.team-card h3{font-size:1.25rem}.team-card p{font-size:.9rem}.team-card p strong{display:block;margin-bottom:.25rem;min-width:100px}.primary-btn{font-size:.875rem;min-width:140px;padding:.75rem 1.5rem}}@media (max-width:480px){.team-card{padding:1.25rem}.team-card h3{font-size:1.125rem}.primary-btn{padding:1rem;width:100%}}.member-details-btn{align-items:center;background:#4a5568;border:none;border-radius:.5rem;color:#fff;cursor:pointer;display:flex;font-size:.875rem;font-weight:500;gap:.5rem;padding:.5rem 1rem;transition:all .2s ease}.member-details-btn:hover{background:#2d3748;transform:translateY(-1px)}.member-details-overlay{align-items:center;animation:fadeIn .2s ease-out;background:#0009;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:2000}.member-details-modal{animation:slideIn .3s ease-out;background:#fff;border-radius:1rem;box-shadow:0 10px 30px #0000004d;max-height:80vh;max-width:500px;overflow:hidden;width:90%}.member-details-modal .modal-header{align-items:center;background:#f9fafb;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:1.5rem 1.5rem 1rem}.member-details-modal .modal-header h3{align-items:center;color:#1f2937;display:flex;font-size:1.25rem;font-weight:600;gap:.5rem;margin:0}.close-modal-btn{border-radius:.25rem;font-size:1.5rem;height:32px;padding:.25rem;width:32px}.close-modal-btn:hover{background:#e5e7eb}.member-details-modal .modal-body{max-height:60vh;overflow-y:auto;padding:1.5rem}.team-info-summary{background:#f3f4f6;border-radius:.5rem;margin-bottom:1.5rem;padding:1rem}.team-stats-row{display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between}.team-stats-row span{align-items:center;color:#4b5563;display:flex;font-size:.875rem;font-weight:500;gap:.25rem}.members-list-modal{display:flex;flex-direction:column;gap:1rem}.member-item-modal{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:.75rem;display:flex;justify-content:space-between;padding:1rem;transition:all .2s ease}.member-item-modal:hover{border-color:#3b82f6;box-shadow:0 2px 8px #0000001a}.member-item-modal .member-avatar-container{border-radius:50%;flex-shrink:0;height:50px;overflow:hidden;position:relative;width:50px}.member-item-modal .member-profile-pic{border-radius:50%;height:100%;object-fit:cover;width:100%}.member-item-modal .member-avatar-fallback{align-items:center;background:#6b7280;border-radius:50%;color:#fff;display:flex;font-size:1.25rem;font-weight:600;height:100%;justify-content:center;width:100%}.member-info-modal{flex:1 1;margin-left:1rem}.member-name-role{display:flex;flex-direction:column;gap:.25rem}.member-info-modal .member-name{color:#1f2937;font-size:1rem;font-weight:600}.member-info-modal .member-role{align-items:center;color:#059669;display:flex;font-size:.875rem;font-weight:500;gap:.25rem}.member-info-modal .member-id{color:#6b7280;font-size:.75rem;margin-top:.25rem}.crown-icon{color:#f59e0b;font-size:.875rem}.member-actions-modal{align-items:center;display:flex;gap:.5rem}.make-leader-btn-modal,.remove-member-btn-modal{align-items:center;border:none;border-radius:.375rem;cursor:pointer;display:flex;font-size:.75rem;font-weight:500;gap:.25rem;padding:.5rem .75rem;transition:all .2s ease}.make-leader-btn-modal{background:#f59e0b;color:#fff}.make-leader-btn-modal:hover{background:#d97706;transform:translateY(-1px)}.remove-member-btn-modal{background:#ef4444;color:#fff}.remove-member-btn-modal:hover{background:#dc2626;transform:translateY(-1px)}.current-user-indicator{align-items:center;display:flex}.you-label{color:#3b82f6;font-size:.875rem;font-style:italic;font-weight:600}.member-details-modal .modal-footer{background:#f9fafb;border-top:1px solid #e5e7eb;padding:1rem 1.5rem;text-align:center}.dismiss-team-btn-modal{align-items:center;background:#dc2626;border:none;border-radius:.5rem;color:#fff;cursor:pointer;display:flex;font-size:.875rem;font-weight:600;gap:.5rem;margin:0 auto;padding:.75rem 1.5rem;transition:all .2s ease}.dismiss-team-btn-modal:hover{background:#b91c1c;transform:translateY(-1px)}.management-rules-modal{background:#3b82f61a;border:1px solid #3b82f633;border-radius:.5rem;margin-top:1rem;padding:1rem}.management-rules-modal h5{align-items:center;color:#3b82f6;display:flex;font-size:.875rem;gap:.5rem;margin:0 0 .5rem}.management-rules-modal ul{margin:0;padding-left:1rem}.management-rules-modal li{color:#4b5563;font-size:.75rem;margin-bottom:.25rem}@media (max-width:640px){.member-details-modal{margin:1rem;width:95%}.team-stats-row{flex-direction:column;gap:.5rem}.member-item-modal{flex-direction:column;gap:1rem;text-align:center}.member-actions-modal{justify-content:center;width:100%}.member-info-modal{margin-left:0;text-align:center}}.leader-confirmation-overlay{align-items:center;animation:fadeIn .3s ease-out;background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:2500}.leader-confirmation-modal{animation:slideInScale .4s cubic-bezier(.34,1.56,.64,1);background:#fff;border-radius:1rem;box-shadow:0 15px 40px #0000004d;display:flex;flex-direction:column;max-height:75vh;max-width:420px;overflow:hidden;width:90%}.confirmation-header{align-items:center;background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;display:flex;flex-shrink:0;gap:.75rem;padding:1.25rem 1.5rem .75rem}.confirmation-icon{align-items:center;background:#fff3;border-radius:50%;display:flex;font-size:1.25rem;height:40px;justify-content:center;width:40px}.confirmation-header h3{color:#fff;font-size:1.25rem;font-weight:700;margin:0}.confirmation-body{display:flex;flex:1 1;flex-direction:column;gap:1rem;min-height:0;overflow-y:auto;padding:1.25rem}.confirmation-body::-webkit-scrollbar{width:6px}.confirmation-body::-webkit-scrollbar-track{background:#f1f1f1;border-radius:3px}.confirmation-body::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:3px}.confirmation-body::-webkit-scrollbar-thumb:hover{background:#a1a1a1}.member-info{align-items:center;background:#f8fafc;border:2px solid #f59e0b;border-radius:.75rem;display:flex;gap:.75rem;padding:1rem}.member-avatar-large{align-items:center;background:linear-gradient(135deg,#f59e0b,#d97706);border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:1.5rem;font-weight:700;height:50px;justify-content:center;width:50px}.member-details h4{color:#1f2937;font-size:1.125rem;font-weight:600;margin:0 0 .125rem}.member-details p{color:#6b7280;font-size:.8rem;margin:0}.message-content p{font-size:.85rem;margin:0 0 .25rem}.leadership-changes{background:#f3f4f6;border-radius:.5rem;padding:.75rem}.leadership-changes h5{color:#374151;font-size:.8rem;font-weight:600;margin:0 0 .5rem}.leadership-changes ul{list-style:none;margin:0;padding-left:.75rem}.leadership-changes li{color:#6b7280;font-size:.75rem;line-height:1.3;margin-bottom:.25rem}.leadership-changes li:last-child{margin-bottom:0}.confirmation-actions{background:#f9fafb;border-top:1px solid #e5e7eb;display:flex;flex-shrink:0;gap:.75rem;padding:1rem 1.25rem 1.25rem}.cancel-leader-btn,.confirm-leader-btn{align-items:center;border:none;border-radius:.5rem;cursor:pointer;display:flex;flex:1 1;font-size:.8rem;font-weight:600;gap:.375rem;justify-content:center;padding:.75rem 1rem;transition:all .2s ease}.cancel-leader-btn{background:#f3f4f6;border:1px solid #d1d5db;color:#374151}.cancel-leader-btn:hover{background:#e5e7eb;border-color:#9ca3af;transform:translateY(-1px)}.confirm-leader-btn{background:linear-gradient(135deg,#f59e0b,#d97706);box-shadow:0 3px 8px #f59e0b4d;color:#fff}.confirm-leader-btn:hover{background:linear-gradient(135deg,#d97706,#b45309);box-shadow:0 4px 12px #f59e0b66;transform:translateY(-1px)}.cancel-leader-btn:active,.confirm-leader-btn:active{transform:translateY(0)}@media (max-width:640px){.leader-confirmation-modal{margin:.75rem;max-height:90vh;width:95%}.confirmation-header{padding:1rem 1rem .5rem}.confirmation-header h3{font-size:1.125rem}.confirmation-body{gap:.75rem;padding:1rem}.member-info{flex-direction:column;padding:.75rem;text-align:center}.confirmation-actions{flex-direction:column;padding:.75rem 1rem 1rem}.cancel-leader-btn,.confirm-leader-btn{padding:.625rem 1rem;width:100%}}.logout-confirmation-overlay{align-items:center;animation:fadeIn .3s ease-out;background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:3000}.logout-confirmation-modal{border-radius:1.5rem;box-shadow:0 20px 60px #0000004d;max-width:450px;width:90%}.logout-confirmation-modal .modal-header{gap:1rem;padding:2rem 2rem 1rem}.logout-icon{height:50px;width:50px}.logout-confirmation-modal .modal-header h3,.logout-icon{font-size:1.5rem}.logout-confirmation-modal .modal-body{gap:1.5rem;padding:2rem}.confirmation-message{border-radius:.75rem;gap:1rem;padding:1rem}.info-icon{font-size:1.25rem}.message-content p:last-child{font-size:.9rem}.user-info{border:2px solid #e5e7eb;border-radius:.75rem;padding:1rem}.current-user{gap:1rem}.avatar-fallback,.user-avatar{height:50px;width:50px}.avatar-fallback{font-size:1.25rem}.user-details{gap:.25rem}.user-name{font-size:1.125rem}.user-id{font-size:.875rem}.logout-effects{border-radius:.75rem;padding:1rem}.logout-effects h5{font-size:.9rem;margin:0 0 .75rem}.logout-effects ul{padding-left:1rem}.logout-effects li{font-size:.85rem;line-height:1.4;margin-bottom:.5rem}.logout-confirmation-modal .modal-actions{gap:1rem;padding:1.5rem 2rem 2rem}.cancel-logout-btn,.confirm-logout-btn{border-radius:.75rem;font-size:.9rem;gap:.5rem;padding:.875rem 1.5rem}.confirm-logout-btn{box-shadow:0 4px 12px #ef44444d}.confirm-logout-btn:hover{box-shadow:0 6px 16px #ef444466}@keyframes slideInScale{0%{opacity:0;transform:translateY(-30px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}@media (max-width:640px){.logout-confirmation-modal{margin:1rem;width:95%}.logout-confirmation-modal .modal-header{padding:1.5rem 1.5rem 1rem}.logout-confirmation-modal .modal-header h3{font-size:1.25rem}.logout-confirmation-modal .modal-body{gap:1rem;padding:1.5rem}.current-user{flex-direction:column;gap:.75rem;text-align:center}.logout-confirmation-modal .modal-actions{flex-direction:column;padding:1rem 1.5rem 1.5rem}.cancel-logout-btn,.confirm-logout-btn{width:100%}}.logout-confirmation-modal{animation:slideInScale .4s cubic-bezier(.34,1.56,.64,1);background:#fff;border-radius:1rem;box-shadow:0 15px 40px #0000004d;max-height:65vh;max-width:320px;overflow:hidden;width:85%}.logout-confirmation-modal .modal-header{align-items:center;background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;display:flex;gap:.75rem;padding:1.25rem 1.25rem .75rem}.logout-icon{align-items:center;background:#fff3;border-radius:50%;display:flex;font-size:1.25rem;height:40px;justify-content:center;width:40px}.logout-confirmation-modal .modal-header h3{color:#fff;font-size:1.25rem;font-weight:700;margin:0}.logout-confirmation-modal .modal-body{display:flex;flex-direction:column;gap:1rem;padding:1.25rem}.confirmation-message{background:#3b82f61a;border:1px solid #3b82f633;border-radius:.5rem;display:flex;gap:.75rem;padding:.75rem}.info-icon{color:#3b82f6;font-size:1rem;margin-top:.125rem}.message-content p{color:#374151;line-height:1.4;margin:0 0 .375rem}.message-content p:last-child{color:#6b7280;font-size:.8rem}.user-info{background:#f8fafc;border:1px solid #e5e7eb;border-radius:.5rem;padding:.75rem}.current-user{align-items:center;display:flex;gap:.75rem}.user-avatar{flex-shrink:0;height:40px;width:40px}.avatar-fallback{background:linear-gradient(135deg,#ef4444,#dc2626);font-size:1rem;height:40px;width:40px}.user-details{display:flex;flex-direction:column;gap:.125rem}.user-name{color:#1f2937;font-size:1rem}.user-id{color:#6b7280;font-size:.8rem}.logout-effects{background:#fef2f2;border:1px solid #fecaca;border-radius:.5rem;padding:.75rem}.logout-effects h5{color:#dc2626;font-size:.8rem;font-weight:600;margin:0 0 .5rem}.logout-effects ul{list-style:none;margin:0;padding-left:.75rem}.logout-effects li{color:#7f1d1d;font-size:.75rem;line-height:1.3;margin-bottom:.375rem}.logout-effects li:last-child{margin-bottom:0}.logout-confirmation-modal .modal-actions{background:#f9fafb;display:flex;gap:.75rem;padding:1rem 1.25rem 1.25rem}.cancel-logout-btn,.confirm-logout-btn{align-items:center;border:none;border-radius:.5rem;cursor:pointer;display:flex;flex:1 1;font-size:.8rem;font-weight:600;gap:.375rem;justify-content:center;padding:.625rem 1rem;transition:all .2s ease}.cancel-logout-btn{background:#f3f4f6;border:1px solid #d1d5db;color:#374151}.cancel-logout-btn:hover{background:#e5e7eb;border-color:#9ca3af;transform:translateY(-1px)}.confirm-logout-btn{background:linear-gradient(135deg,#ef4444,#dc2626);box-shadow:0 3px 8px #ef44444d;color:#fff}.confirm-logout-btn:hover{background:linear-gradient(135deg,#dc2626,#b91c1c);box-shadow:0 4px 12px #ef444466;transform:translateY(-1px)}.cancel-logout-btn:active,.confirm-logout-btn:active{transform:translateY(0)}@media (max-width:640px){.logout-confirmation-modal{margin:.75rem;max-height:70vh;max-width:280px;width:90%}.logout-confirmation-modal .modal-header{padding:1rem 1rem .5rem}.logout-confirmation-modal .modal-header h3{font-size:1.125rem}.logout-confirmation-modal .modal-body{gap:.75rem;padding:1rem}.current-user{flex-direction:column;gap:.5rem;text-align:center}.logout-confirmation-modal .modal-actions{flex-direction:column;padding:.75rem 1rem 1rem}.cancel-logout-btn,.confirm-logout-btn{padding:.75rem 1rem;width:100%}}@media (max-width:480px){.logout-confirmation-modal{max-height:75vh;max-width:260px}.logout-confirmation-modal .modal-header{padding:.75rem .75rem .5rem}.logout-confirmation-modal .modal-body{gap:.5rem;padding:.75rem}.logout-confirmation-modal .modal-actions{padding:.75rem}}.sidebar-footer{background:#f7fafc;background:var(--gray-50);border-top:1px solid #e2e8f0;border-top:1px solid var(--border-color);padding:1rem}.user-profile{align-items:center;display:flex;gap:.75rem;margin-bottom:1rem}.user-avatar{border-radius:50%;height:35px;overflow:hidden;width:35px}.user-avatar img{height:100%;object-fit:cover;width:100%}.avatar-fallback{background:#667eea;border-radius:50%;font-size:.875rem;font-weight:600;height:35px;width:35px}.user-info{display:flex;flex-direction:column}.user-name{color:#2d3748;color:var(--text-primary);font-size:.875rem;font-weight:600}.user-id{color:#4a5568;color:var(--text-secondary);font-size:.75rem}.logout-btn{align-items:center;background:#ef4444;border:none;border-radius:.5rem;color:#fff;cursor:pointer;display:flex;font-size:.875rem;font-weight:600;gap:.5rem;justify-content:center;padding:.75rem;transition:all .2s ease;width:100%}.logout-btn:hover{background:#dc2626;transform:translateY(-1px)}.logout-compact-overlay{align-items:center;animation:fadeIn .2s ease-out;background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:3000}.logout-compact-modal{animation:slideIn .3s ease-out;background:#fff;border-radius:.75rem;box-shadow:0 10px 25px #0000004d;max-width:90vw;overflow:hidden;width:280px}.compact-header{align-items:center;background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;display:flex;gap:.5rem;padding:1rem 1rem .5rem}.logout-icon{font-size:1.125rem}.compact-header h3{font-size:1rem;font-weight:600;margin:0}.compact-body{padding:1rem;text-align:center}.user-preview{align-items:center;background:#f8fafc;border-radius:.5rem;display:flex;gap:.75rem;margin-bottom:.75rem;padding:.75rem}.user-avatar-small{border-radius:50%;flex-shrink:0;height:35px;overflow:hidden;width:35px}.user-avatar-small img{height:100%;object-fit:cover;width:100%}.avatar-small{align-items:center;background:linear-gradient(135deg,#ef4444,#dc2626);border-radius:50%;color:#fff;display:flex;font-size:.875rem;font-weight:600;height:35px;justify-content:center;width:35px}.user-details-small{display:flex;flex-direction:column;text-align:left}.user-details-small .name{color:#1f2937;font-size:.875rem;font-weight:600}.user-details-small .id{color:#6b7280;font-size:.75rem}.logout-message{color:#374151;font-size:.875rem;line-height:1.4;margin:0}.compact-actions{background:#f9fafb;display:flex;gap:.5rem;padding:.75rem 1rem 1rem}.cancel-btn,.confirm-btn{align-items:center;border:none;border-radius:.375rem;cursor:pointer;display:flex;flex:1 1;font-size:.75rem;font-weight:600;gap:.375rem;justify-content:center;padding:.625rem .75rem;transition:all .2s ease}.cancel-btn:hover{transform:translateY(-1px)}.confirm-btn{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff}.confirm-btn:hover{background:linear-gradient(135deg,#dc2626,#b91c1c);transform:translateY(-1px)}@media (max-width:480px){.logout-compact-modal{margin:1rem;width:260px}.compact-header{padding:.75rem .75rem .5rem}.compact-body{padding:.75rem}.compact-actions{flex-direction:column;padding:.75rem}.cancel-btn,.confirm-btn{width:100%}}.sidebar.collapsed .logout-btn span{display:none}.sidebar.collapsed .user-profile{flex-direction:column;text-align:center}.sidebar.collapsed .user-info{display:none}.file-upload-container{align-items:center;display:flex;position:relative}.file-upload-btn{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:.75rem;box-shadow:0 2px 8px #667eea4d;color:#fff;cursor:pointer;display:flex;height:42px;justify-content:center;margin-right:.5rem;transition:all .2s ease;width:42px}.file-upload-btn:hover:not(:disabled){background:linear-gradient(135deg,#5a67d8,#6b46c1);box-shadow:0 4px 12px #667eea66;transform:translateY(-2px)}.file-upload-btn:disabled{box-shadow:0 2px 4px #667eea33;cursor:not-allowed;opacity:.6;transform:none}.file-upload-btn svg{font-size:1.125rem;transition:transform .2s ease}.file-upload-btn:hover:not(:disabled) svg{transform:rotate(15deg)}.selected-file-preview{animation:slideUp .3s ease-out;background:#fff;border-radius:.75rem;box-shadow:0 8px 24px #00000026;padding:1rem;z-index:10}@keyframes slideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.file-info{gap:.75rem;margin-bottom:.75rem}.file-icon{font-size:1.75rem}.file-icon.image{color:#10b981}.file-icon.document{color:#3b82f6}.upload-progress{background:#f3f4f6;border-radius:3px;height:6px;margin-bottom:.75rem;overflow:hidden;position:relative;width:100%}.progress-bar{background:linear-gradient(90deg,#10b981,#059669);transition:width .3s ease}.progress-bar:after{animation:shimmer 1.5s infinite;background:linear-gradient(90deg,#0000,#ffffff4d,#0000);bottom:0;content:"";left:0;position:absolute;right:0;top:0}.remove-file-btn{box-shadow:0 2px 8px #ef44444d;right:.5rem;top:.5rem;transition:all .2s ease}.remove-file-btn:hover:not(:disabled){background:#dc2626;box-shadow:0 4px 12px #ef444466;transform:scale(1.1)}.remove-file-btn svg{font-size:.875rem}.image-message{background:#fff;border-radius:.75rem;box-shadow:0 4px 12px #0000001a;max-width:320px;overflow:hidden}.message-image{cursor:pointer;max-height:240px;object-fit:cover;transition:transform .2s ease;width:100%}.message-image:hover{transform:scale(1.02)}.image-info{align-items:center;background:#f8fafc;border-top:1px solid #e2e8f0;display:flex;justify-content:space-between;padding:.75rem}.image-name{color:#6b7280;flex:1 1;font-size:.8rem;font-weight:500;margin-right:.5rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-message{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:.75rem;display:flex;gap:.75rem;max-width:320px;padding:1rem;transition:all .2s ease}.file-message:hover{background:#f1f5f9;border-color:#3b82f6;box-shadow:0 4px 12px #3b82f626}.file-icon-container{background:linear-gradient(135deg,#3b82f6,#2563eb);border-radius:.75rem;box-shadow:0 4px 12px #3b82f64d;color:#fff;flex-shrink:0}.file-icon-container svg{font-size:1.25rem}.file-name{font-size:.9rem;font-weight:600;margin-bottom:.25rem}.download-btn{background:linear-gradient(135deg,#10b981,#059669);border-radius:.5rem;box-shadow:0 2px 8px #10b9814d;padding:.5rem;transition:all .2s ease}.download-btn:hover{background:linear-gradient(135deg,#059669,#047857);box-shadow:0 4px 12px #10b98166;transform:translateY(-2px)}.download-btn svg{font-size:1rem}.input-group{align-items:flex-end;background:#fff;border-radius:0 0 1rem 1rem;border-top:1px solid #e2e8f0;display:flex;gap:.5rem;padding:1rem}.input-group input[type=text]{background:#f8fafc;border:1px solid #e2e8f0;border-radius:1.5rem;flex:1 1;font-size:.9rem;padding:.875rem 1rem;transition:all .2s ease}.input-group input[type=text]:focus{background:#fff;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.send-btn{align-items:center;background:linear-gradient(135deg,#10b981,#059669);border:none;border-radius:50%;box-shadow:0 2px 8px #10b9814d;color:#fff;cursor:pointer;display:flex;height:42px;justify-content:center;transition:all .2s ease;width:42px}.send-btn:hover:not(:disabled){background:linear-gradient(135deg,#059669,#047857);box-shadow:0 4px 12px #10b98166;transform:translateY(-2px) scale(1.05)}.send-btn:disabled{cursor:not-allowed;opacity:.5;transform:none}.send-btn svg{font-size:1rem}.file-type-pdf .file-icon-container{background:linear-gradient(135deg,#ef4444,#dc2626)}.file-type-doc .file-icon-container,.file-type-docx .file-icon-container{background:linear-gradient(135deg,#2563eb,#1d4ed8)}.file-type-gif .file-icon-container,.file-type-jpg .file-icon-container,.file-type-png .file-icon-container{background:linear-gradient(135deg,#10b981,#059669)}.file-type-txt .file-icon-container{background:linear-gradient(135deg,#6b7280,#4b5563)}@media (max-width:768px){.selected-file-preview{left:-1rem;margin-left:1rem;margin-right:1rem;right:-1rem}.file-message,.image-message{max-width:280px}.file-upload-btn,.send-btn{height:38px;width:38px}.file-icon-container{height:42px;width:42px}.input-group{padding:.75rem}.input-group input[type=text]{font-size:.875rem;padding:.75rem 1rem}}@media (max-width:480px){.file-message{flex-direction:column;gap:.5rem;max-width:100%}.file-details,.file-message{text-align:center}.download-btn{align-self:stretch}}.file-upload-container.drag-over{background:#3b82f61a;border:2px dashed #3b82f6;border-radius:.75rem;padding:1rem}.file-upload-container.drag-over .file-upload-btn{background:linear-gradient(135deg,#3b82f6,#2563eb);transform:scale(1.1)}.download-btn:focus,.file-upload-btn:focus,.remove-file-btn:focus,.send-btn:focus{outline:2px solid #3b82f6;outline-offset:2px}.file-upload-error{align-items:center;color:#ef4444;display:flex;font-size:.75rem;gap:.25rem;margin-top:.5rem}.file-upload-error svg{font-size:.875rem}.file-upload-success{align-items:center;color:#10b981;display:flex;font-size:.75rem;gap:.25rem;margin-top:.5rem}.file-upload-success svg{font-size:.875rem}.selected-file-preview{animation:slideUpFade .4s cubic-bezier(.34,1.56,.64,1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(135deg,#fff,#f8fafc);border:1px solid #e2e8f0;border-radius:1rem;border-top:3px solid #667eea;bottom:100%;box-shadow:0 10px 30px #00000026;left:0;margin-bottom:.75rem;min-width:320px;padding:1.25rem;position:absolute;right:0;z-index:100}@keyframes slideUpFade{0%{opacity:0;transform:translateY(15px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.file-info{align-items:center;border-bottom:1px solid #f1f5f9;display:flex;gap:1rem;margin-bottom:1rem;padding-bottom:.75rem}.file-icon{border-radius:.75rem;padding:.75rem}.file-icon:after{background:linear-gradient(135deg,#0000,#ffffff4d,#0000);border-radius:.75rem;content:"";inset:-2px;-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:exclude;padding:2px;position:absolute}.file-icon.image{background:linear-gradient(135deg,#10b981,#059669);box-shadow:0 4px 16px #10b9814d;color:#fff}.file-icon.document{background:linear-gradient(135deg,#3b82f6,#2563eb);box-shadow:0 4px 16px #3b82f64d;color:#fff}.file-icon.pdf{background:linear-gradient(135deg,#ef4444,#dc2626);box-shadow:0 4px 16px #ef44444d;color:#fff}.file-icon.excel{background:linear-gradient(135deg,#10b981,#059669);box-shadow:0 4px 16px #10b9814d;color:#fff}.file-icon.word{background:linear-gradient(135deg,#2563eb,#1d4ed8);box-shadow:0 4px 16px #2563eb4d;color:#fff}.file-name{font-size:1rem;font-weight:700;line-height:1.4;margin-bottom:.5rem;overflow:hidden;position:relative;text-overflow:ellipsis;white-space:nowrap}.file-name:after{background:linear-gradient(90deg,#667eea,#764ba2);border-radius:1px;bottom:-2px;content:"";height:2px;left:0;position:absolute;width:30px}.file-size{align-items:center;display:flex;font-size:.875rem;font-weight:500;gap:.5rem}.file-size:before{content:"📄";font-size:.75rem}.file-type-indicator{background:#667eea1a;border-radius:1rem;color:#4c51bf;display:inline-flex;font-size:.75rem;font-weight:600;gap:.25rem;letter-spacing:.5px;margin-top:.5rem;padding:.25rem .75rem;text-transform:uppercase}.upload-progress{margin:1rem 0;opacity:0;transform:translateY(-10px);transition:all .3s ease}.upload-progress.active{opacity:1;transform:translateY(0)}.progress-header{margin-bottom:.5rem}.progress-label{color:#374151;font-size:.875rem;font-weight:600}.progress-percentage{color:#10b981;font-size:.875rem}.progress-bar-container{border-radius:3px;box-shadow:inset 0 1px 3px #0000001a;height:6px;position:relative}.progress-bar{background:linear-gradient(90deg,#10b981,#059669 50%,#10b981);border-radius:3px;height:100%;transition:width .4s cubic-bezier(.4,0,.2,1)}.progress-bar:before{animation:shimmer 2s infinite;background:linear-gradient(90deg,#0000,#fff6,#0000);bottom:0;content:"";left:0;position:absolute;right:0;top:0}.upload-speed{color:#6b7280;display:flex;font-size:.75rem;justify-content:space-between;margin-top:.5rem}.remove-file-btn{background:linear-gradient(135deg,#ef4444,#dc2626);box-shadow:0 4px 12px #ef44444d;height:32px;position:absolute;right:.75rem;top:.75rem;transition:all .3s ease;width:32px;z-index:10}.remove-file-btn:hover:not(:disabled){background:linear-gradient(135deg,#dc2626,#b91c1c);box-shadow:0 6px 16px #ef444466;transform:scale(1.1) rotate(90deg)}.remove-file-btn:disabled{cursor:not-allowed;opacity:.6;transform:none}.remove-file-btn svg{font-size:1rem;transition:transform .3s ease}.file-preview-actions{border-top:1px solid #f1f5f9;display:flex;gap:.75rem;margin-top:1rem;padding-top:.75rem}.preview-action-btn{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:.5rem;color:#374151;cursor:pointer;display:flex;flex:1 1;font-size:.875rem;font-weight:500;gap:.5rem;justify-content:center;padding:.625rem 1rem;transition:all .2s ease}.preview-action-btn:hover{background:#f8fafc;border-color:#d1d5db;transform:translateY(-1px)}.preview-action-btn.primary{background:linear-gradient(135deg,#667eea,#764ba2);border-color:#0000;color:#fff}.preview-action-btn.primary:hover{background:linear-gradient(135deg,#5a67d8,#6b46c1);box-shadow:0 4px 12px #667eea4d;transform:translateY(-2px)}.file-validation{align-items:center;border-radius:.5rem;display:flex;font-size:.875rem;gap:.5rem;margin-top:.75rem;padding:.75rem}.file-validation.success{background:#10b9811a;border:1px solid #10b98133;color:#065f46}.file-validation.error{background:#ef44441a;border:1px solid #ef444433;color:#991b1b}.file-validation.warning{background:#f59e0b1a;border:1px solid #f59e0b33;color:#92400e}.file-upload-container.uploading .selected-file-preview{animation:pulse 2s infinite}.file-upload-container.success .selected-file-preview{border-color:#10b981;box-shadow:0 10px 30px #10b98133}.file-upload-container.error .selected-file-preview{animation:shake .5s ease-in-out;border-color:#ef4444;box-shadow:0 10px 30px #ef444433}@keyframes shake{0%,to{transform:translateX(0)}25%{transform:translateX(-5px)}75%{transform:translateX(5px)}}@media (max-width:768px){.selected-file-preview{left:-1rem;margin-left:1rem;margin-right:1rem;min-width:auto;padding:1rem;right:-1rem}.file-info{flex-direction:column;gap:.75rem;text-align:center}.file-icon{font-size:2rem;padding:.5rem}.file-details{text-align:center}.file-preview-actions{flex-direction:column}.remove-file-btn{height:28px;right:.5rem;top:.5rem;width:28px}}@media (max-width:480px){.selected-file-preview{padding:.75rem}.file-name{font-size:.875rem}.file-size{font-size:.75rem}.progress-header{align-items:flex-start;flex-direction:column;gap:.25rem}}.file-upload-btn:focus,.preview-action-btn:focus,.remove-file-btn:focus{outline:2px solid #3b82f6;outline-offset:2px}.file-upload-btn[title]:hover:after,.remove-file-btn[title]:hover:after{background:#1f2937;border-radius:.375rem;bottom:100%;color:#fff;content:attr(title);font-size:.75rem;left:50%;margin-bottom:.5rem;padding:.5rem .75rem;position:absolute;transform:translateX(-50%);white-space:nowrap;z-index:1000}.inline-password-form{display:flex;flex-direction:column;gap:1rem;max-width:400px;width:100%}.inline-form-group{display:flex;flex-direction:column;gap:.5rem}.inline-form-group label{color:#374151;font-size:.875rem;font-weight:500}.inline-form-group input{border:1px solid #d1d5db;border-radius:.375rem;font-size:.875rem;padding:.75rem;transition:border-color .2s,box-shadow .2s}.inline-form-group input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.inline-form-group input.error{border-color:#ef4444;box-shadow:0 0 0 3px #ef44441a}.inline-error-message{color:#ef4444;font-size:.75rem;margin-top:.25rem}.inline-password-requirements{background:#f3f4f6;border-radius:.375rem;margin:.5rem 0;padding:.75rem}.inline-password-requirements small{color:#6b7280;font-size:.75rem;line-height:1.4}.inline-form-actions{display:flex;gap:.75rem;justify-content:flex-end;margin-top:.5rem}.inline-cancel-btn,.inline-ok-btn{border:1px solid #d1d5db;border-radius:.375rem;cursor:pointer;font-size:.875rem;font-weight:500;padding:.5rem 1rem;transition:all .2s}.inline-cancel-btn{background:#f9fafb;color:#374151}.inline-cancel-btn:hover:not(:disabled){background:#f3f4f6;border-color:#9ca3af}.inline-ok-btn{background:#3b82f6;border-color:#3b82f6;color:#fff}.inline-ok-btn:hover:not(:disabled){background:#2563eb;border-color:#2563eb}.inline-cancel-btn:disabled,.inline-ok-btn:disabled{cursor:not-allowed;opacity:.6}@media (max-width:768px){.inline-password-form{max-width:100%}.inline-form-actions{flex-direction:column}.inline-cancel-btn,.inline-ok-btn{width:100%}}.temporary-success-message{animation:slideIn .3s ease-out,fadeOut .3s ease-in 4.7s forwards;background:linear-gradient(135deg,#48bb78,#38a169);border-radius:.5rem;box-shadow:0 4px 12px #00000026;color:#fff;min-width:300px;padding:1rem 1.5rem;position:fixed;right:20px;top:20px;z-index:9999}.success-content{align-items:center;display:flex;font-weight:500;gap:.75rem}.success-icon{color:#fff;font-size:1.25rem}@keyframes fadeOut{0%{opacity:1}to{opacity:0;transform:translateX(100%)}}@media (max-width:768px){.temporary-success-message{left:10px;min-width:auto;right:10px;top:10px}}.team-card .edit-team-form{display:flex;flex-direction:column;gap:1.5rem}.edit-team-form .form-group{display:flex;flex-direction:column;gap:.5rem}.edit-team-form .form-group label{align-items:center;color:#374151;display:flex;font-size:.875rem;font-weight:600;gap:.5rem}.label-icon{color:#6b7280;font-size:1rem}.edit-team-form input,.edit-team-form select,.edit-team-form textarea{border:1px solid #d1d5db;border-radius:.375rem;font-size:.875rem;padding:.75rem;transition:border-color .2s,box-shadow .2s}.edit-team-form input:focus,.edit-team-form select:focus,.edit-team-form textarea:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.edit-team-form input.error,.edit-team-form select.error,.edit-team-form textarea.error{border-color:#ef4444;box-shadow:0 0 0 3px #ef44441a}.edit-team-form textarea{min-height:100px;resize:vertical}.form-actions{border-top:1px solid #e5e7eb;margin-top:1rem}.error-message.general-error{align-items:center;background:#fef2f2;border:1px solid #fecaca;border-radius:.375rem;display:flex;gap:.5rem;margin-bottom:1rem;padding:.75rem}.status-badge.editing{background:#f59e0b;color:#fff}@media (max-width:768px){.form-actions{flex-direction:column;gap:.5rem}.form-actions button{width:100%}}.notification-header{align-items:center;background:#f9fafb;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:1rem 1.25rem}.notification-header h3{color:#111827;font-size:1.25rem;font-weight:700;margin:0}.close-panel-btn{background:none;border:none;border-radius:.25rem;color:#6b7280;cursor:pointer;padding:.25rem;transition:all .2s}.close-panel-btn:hover{background:#f3f4f6;color:#374151}.notifications-list{max-height:400px;overflow-y:auto}.notification-item{align-items:flex-start;border-bottom:1px solid #f3f4f6;display:flex;gap:.75rem;padding:1rem 1.5rem;position:relative;transition:all .2s}.notification-item:hover{background:#f9fafb}.notification-item.unread{background:#f0f9ff;border-left:3px solid #3b82f6}.notification-content{align-items:flex-start;flex:1 1;gap:.75rem}.notification-type{align-items:center;border-radius:50%;display:flex;height:24px;justify-content:center;margin-top:.125rem;width:24px}.notification-type.success{color:#10b981}.notification-type.error{color:#ef4444}.notification-type.info{color:#3b82f6}.notification-type.warning{color:#f59e0b}.notification-text{flex:1 1}.notification-text p{color:#374151;font-size:.875rem;line-height:1.4;margin:0}.notification-text small{color:#6b7280;font-size:.75rem}.notification-close-btn{align-items:center;background:none;border:none;border-radius:.25rem;color:#9ca3af;cursor:pointer;display:flex;height:20px;justify-content:center;margin-top:.125rem;padding:.25rem;transition:all .2s;width:20px}.notification-close-btn:hover{background:#f3f4f6;color:#ef4444}.no-notifications{align-items:center;color:#6b7280;display:flex;flex-direction:column;justify-content:center;padding:3rem 1.5rem}.no-notif-icon{font-size:2rem;margin-bottom:.5rem}.clear-all-btn,.notification-actions{align-items:center}.clear-all-btn{background:#ef4444;border:none;border-radius:.375rem;color:#fff;cursor:pointer;display:flex;font-size:.875rem;font-weight:500;gap:.5rem;justify-content:center;padding:.5rem 1rem;transition:background .2s;width:100%}.clear-all-btn:hover{background:#dc2626}@media (max-width:768px){.notification-panel{left:10px;right:10px;top:70px;width:auto}}.notification-overlay{background:#0000004d;bottom:0;left:0;position:fixed;right:0;top:0;z-index:999}.dismiss-team-modal-overlay{align-items:center;background-color:#0009;bottom:0;display:flex;justify-content:center;left:0;padding:1rem;position:fixed;right:0;top:0;z-index:10000}.dismiss-team-modal{animation:modalSlideIn .25s ease-out;background:#fefefe;border:1px solid #f1f5f9;border-radius:16px;box-shadow:0 8px 24px #00000026;max-width:400px;overflow:hidden;width:100%}.dismiss-team-modal .modal-header{background:#fafbfc;border-bottom:1px solid #f1f5f9;padding:1.25rem 1.25rem .75rem;position:relative;text-align:center}.dismiss-team-modal .dismiss-icon{align-items:center;background:linear-gradient(135deg,#ff7a7a,#ff6b6b);border-radius:50%;box-shadow:0 4px 12px #ff6b6b33;display:flex;height:48px;justify-content:center;margin:0 auto .75rem;width:48px}.dismiss-team-modal .dismiss-icon svg{color:#fff;font-size:1.25rem}.dismiss-team-modal .modal-header h3{color:#64748b;font-size:1.25rem;font-weight:600;line-height:1.3;margin:0}.dismiss-team-modal .close-btn{background:none;border:none;border-radius:4px;color:#cbd5e1;cursor:pointer;font-size:1.25rem;padding:.25rem;position:absolute;right:.75rem;top:.75rem;transition:all .2s ease}.dismiss-team-modal .close-btn:hover{background:#f8fafc;color:#94a3b8}.dismiss-team-modal .modal-body{background:#fefefe;padding:0 1.25rem 1.25rem}.dismiss-team-modal .warning-content{margin-bottom:1rem;text-align:center}.dismiss-team-modal .warning-content p{color:#64748b;font-size:.9375rem;line-height:1.5;margin:0 0 .75rem}.dismiss-team-modal .team-info-card{background:#f8fafb;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:1rem;padding:.75rem}.dismiss-team-modal .team-name{color:#475569;font-size:.9375rem;font-weight:600;margin-bottom:.5rem;text-align:center}.dismiss-team-modal .team-meta{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:center}.dismiss-team-modal .meta-item{align-items:center;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:4px;color:#64748b;display:flex;font-size:.8125rem;gap:.25rem;padding:.125rem .375rem}.dismiss-team-modal .warning-list{background:#fef7f7;border:1px solid #fecaca;border-radius:6px;margin-bottom:1rem;padding:.75rem}.dismiss-team-modal .warning-list h5{color:#dc2626;font-size:.8125rem;font-weight:600;margin:0 0 .5rem;text-align:center}.dismiss-team-modal .warning-list ul{color:#ef4444;font-size:.8125rem;margin:0;padding-left:1rem}.dismiss-team-modal .warning-list li{line-height:1.4;margin-bottom:.25rem}.dismiss-team-modal .warning-list li:last-child{margin-bottom:0}.dismiss-team-modal .modal-actions{background:#fefefe;display:flex;gap:.75rem;justify-content:center;padding:0 1.25rem 1.25rem}.dismiss-team-modal .cancel-dismiss-btn,.dismiss-team-modal .confirm-dismiss-btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;flex:1 1;font-size:.8125rem;font-weight:600;gap:.375rem;justify-content:center;padding:.625rem 1.25rem;transition:all .2s ease}.dismiss-team-modal .cancel-dismiss-btn{background:#f8fafc;border:1px solid #e2e8f0;color:#64748b}.dismiss-team-modal .cancel-dismiss-btn:hover{background:#f1f5f9;border-color:#cbd5e1;color:#475569}.dismiss-team-modal .confirm-dismiss-btn{background:linear-gradient(135deg,#ff7a7a,#ff6b6b);box-shadow:0 2px 8px #ff6b6b40;color:#fff}.dismiss-team-modal .confirm-dismiss-btn:hover{background:linear-gradient(135deg,#ff6b6b,#ff5757);box-shadow:0 4px 12px #ff6b6b4d;transform:translateY(-1px)}.dismiss-team-modal .confirm-dismiss-btn:disabled{background:#e2e8f0;box-shadow:none;color:#cbd5e1;cursor:not-allowed;transform:none}.dismiss-team-modal .confirm-dismiss-btn.loading{color:#0000;position:relative}.dismiss-team-modal .confirm-dismiss-btn.loading:after{animation:spin .8s linear infinite;border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;content:"";height:16px;left:50%;margin:-8px 0 0 -8px;position:absolute;top:50%;width:16px}@media (max-width:480px){.dismiss-team-modal-overlay{padding:.75rem}.dismiss-team-modal{border-radius:12px;max-width:100%}.dismiss-team-modal .modal-header{padding:1rem 1rem .5rem}.dismiss-team-modal .modal-body{padding:0 1rem 1rem}.dismiss-team-modal .modal-actions{flex-direction:column;gap:.5rem;padding:0 1rem 1rem}.dismiss-team-modal .cancel-dismiss-btn,.dismiss-team-modal .confirm-dismiss-btn{flex:none;width:100%}.dismiss-team-modal .team-meta{flex-direction:column;gap:.375rem}.dismiss-team-modal .dismiss-icon{height:40px;width:40px}.dismiss-team-modal .dismiss-icon svg{font-size:1rem}.dismiss-team-modal .modal-header h3{font-size:1.125rem}}@media (prefers-contrast:high){.dismiss-team-modal{border:2px solid #64748b}.dismiss-team-modal .confirm-dismiss-btn{border:2px solid #ff6b6b}.dismiss-team-modal .cancel-dismiss-btn{border:2px solid #64748b}}.filter-btn{background:#fff;border:1px solid #ddd;border-radius:4px;cursor:pointer;font-size:.75rem;padding:.25rem .75rem;transition:all .2s ease}.filter-btn.active{background:#2d3748;background:var(--primary-color);border-color:#2d3748;border-color:var(--primary-color);color:#fff}.filter-btn:hover:not(.active){background:#f5f5f5;border-color:#ccc}.mark-read-btn{align-items:center;background:#22c55e1a;border:1px solid #38a169;border:1px solid var(--success-color);border-radius:4px;color:#38a169;color:var(--success-color);cursor:pointer;display:flex;font-size:.75rem;gap:.25rem;padding:.25rem .75rem;transition:all .2s ease}.mark-read-btn:hover{background:#22c55e33;border-color:#38a169;border-color:var(--success-color)}.notification-controls{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem}.session-expired-backdrop{align-items:center;animation:fadeInBackdrop .25s ease-out;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);background:#000000a6;display:flex;height:100vh;justify-content:center;left:0;padding:1rem;position:fixed;top:0;width:100vw;z-index:10000}.session-expired-dialog{animation:slideInDialog .3s cubic-bezier(.34,1.56,.64,1);background:#fff;border:1px solid #0000000d;border-radius:12px;box-shadow:0 20px 60px #00000026,0 8px 20px #0000001a;max-height:85vh;max-width:420px;overflow:hidden;position:relative;width:100%}.session-header{background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-bottom:1px solid #0000000f;padding:1.5rem 1.5rem 1rem;position:relative;text-align:center}.session-header:after{background:linear-gradient(90deg,#dc3545,#c82333);border-radius:1px;bottom:0;content:"";height:2px;left:50%;position:absolute;transform:translateX(-50%);width:60px}.session-clock-icon{align-items:center;animation:pulseIcon 2s ease-in-out infinite;box-shadow:0 4px 12px #dc354540,0 2px 4px #dc35451a;display:flex;height:50px;justify-content:center;margin:0 auto .75rem;position:relative;width:50px}.session-clock-icon,.session-clock-icon:before{background:linear-gradient(135deg,#dc3545,#c82333);border-radius:50%}.session-clock-icon:before{bottom:-2px;content:"";left:-2px;opacity:.3;position:absolute;right:-2px;top:-2px;z-index:-1}.session-clock-icon svg{color:#fff;filter:drop-shadow(0 1px 2px rgba(0,0,0,.1));font-size:1.25rem}.session-header h3{color:#2c3e50;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:1.25rem;font-weight:600;letter-spacing:-.025em;margin:0}.session-content{padding:1.5rem}.session-warning-box{align-items:flex-start;background:linear-gradient(135deg,#fff3cd,#fef9e7);border:1px solid #ffeaa7;border-radius:8px;box-shadow:0 2px 8px #ffeaa74d;display:flex;gap:.75rem;margin-bottom:1.5rem;padding:1rem}.alert-icon{color:#856404;flex-shrink:0;font-size:1.1rem;margin-top:.125rem}.warning-text{flex:1 1}.warning-text p{color:#856404;font-size:.85rem;font-weight:400;line-height:1.4;margin:0 0 .5rem}.warning-text p:last-child{margin-bottom:0}.warning-text strong{font-weight:600}.session-choice-container{align-items:center;display:flex;gap:.75rem;justify-content:space-between;margin-bottom:1.5rem}.choice-option{align-items:center;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border:1px solid #0000000f;border-radius:8px;display:flex;flex:1 1;gap:.5rem;padding:.75rem;transition:all .2s ease}.choice-option:hover{background:linear-gradient(135deg,#e9ecef,#dee2e6);box-shadow:0 2px 8px #0000001a;transform:translateY(-1px)}.choice-icon{color:#495057;flex-shrink:0;font-size:1rem}.choice-details h4{color:#2c3e50;font-size:.8rem;font-weight:600;line-height:1.2;margin:0 0 .125rem}.choice-details p{color:#6c757d;font-size:.7rem;line-height:1.2;margin:0}.choice-separator{color:#adb5bd;flex-shrink:0;font-size:.8rem;font-weight:500;padding:0 .25rem}.session-buttons{background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-top:1px solid #0000000f;display:flex;gap:.75rem;justify-content:center;padding:1.25rem 1.5rem}.continue-session-button,.relogin-button{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;font-size:.85rem;font-weight:600;gap:.5rem;justify-content:center;min-width:120px;overflow:hidden;padding:.675rem 1.25rem;position:relative;transition:all .25s cubic-bezier(.4,0,.2,1)}.continue-session-button:before,.relogin-button:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s ease;width:100%}.continue-session-button:hover:before,.relogin-button:hover:before{left:100%}.continue-session-button{background:linear-gradient(135deg,#28a745,#20c997);box-shadow:0 3px 8px #28a74540;color:#fff}.continue-session-button:hover{background:linear-gradient(135deg,#218838,#1abc9c);box-shadow:0 6px 16px #28a7454d;transform:translateY(-2px)}.relogin-button{background:linear-gradient(135deg,#6c757d,#495057);box-shadow:0 3px 8px #6c757d40;color:#fff}.relogin-button:hover{background:linear-gradient(135deg,#5a6268,#343a40);box-shadow:0 6px 16px #6c757d4d;transform:translateY(-2px)}.continue-session-button:focus,.relogin-button:focus{outline:2px solid #007bff;outline-offset:2px}.continue-session-button:active,.relogin-button:active{box-shadow:0 2px 6px #0003;transform:translateY(-1px)}@keyframes fadeInBackdrop{0%{-webkit-backdrop-filter:blur(0);backdrop-filter:blur(0);opacity:0}to{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);opacity:1}}@keyframes slideInDialog{0%{opacity:0;transform:translateY(-40px) scale(.85)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes pulseIcon{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@media (max-width:992px){.session-expired-dialog{max-width:400px}}@media (max-width:768px){.session-expired-backdrop{padding:.75rem}.session-expired-dialog{border-radius:10px;max-height:90vh;max-width:100%}.session-header{padding:1.25rem 1.25rem .75rem}.session-clock-icon{height:45px;width:45px}.session-clock-icon svg{font-size:1.1rem}.session-header h3{font-size:1.15rem}.session-content{padding:1.25rem}.session-warning-box{gap:.625rem;padding:.875rem}.warning-text p{font-size:.8rem}.session-choice-container{flex-direction:column;gap:.5rem;margin-bottom:1.25rem}.choice-separator{font-size:.75rem;padding:.125rem;transform:rotate(90deg)}.choice-option{gap:.5rem;padding:.75rem}.choice-details h4{font-size:.75rem}.choice-details p{font-size:.65rem}.session-buttons{flex-direction:column;gap:.625rem;padding:1rem 1.25rem}.continue-session-button,.relogin-button{font-size:.8rem;min-width:auto;padding:.75rem 1rem;width:100%}}@media (max-width:480px){.session-expired-backdrop{padding:.5rem}.session-expired-dialog{border-radius:8px;max-height:95vh}.session-header{padding:1rem 1rem .75rem}.session-clock-icon{height:40px;width:40px}.session-clock-icon svg,.session-header h3{font-size:1rem}.session-content{padding:1rem}.session-warning-box{border-radius:6px;gap:.5rem;padding:.75rem}.alert-icon{font-size:1rem}.warning-text p{font-size:.75rem;line-height:1.3}.session-choice-container{gap:.375rem;margin-bottom:1rem}.choice-option{border-radius:6px;padding:.625rem}.choice-icon{font-size:.9rem}.choice-details h4{font-size:.7rem}.choice-details p{font-size:.6rem}.choice-separator{font-size:.7rem}.session-buttons{gap:.5rem;padding:.875rem 1rem}.continue-session-button,.relogin-button{border-radius:6px;font-size:.75rem;padding:.675rem .875rem}}@media (max-width:360px){.session-expired-backdrop{padding:.25rem}.session-header{padding:.875rem .875rem .5rem}.session-clock-icon{height:36px;width:36px}.session-clock-icon svg{font-size:.9rem}.session-header h3{font-size:.95rem}.session-content{padding:.875rem}.session-warning-box{padding:.625rem}.warning-text p{font-size:.7rem}.choice-option{padding:.5rem}.session-buttons{padding:.75rem .875rem}.continue-session-button,.relogin-button{font-size:.7rem;padding:.625rem .75rem}}@media (max-width:768px) and (orientation:landscape){.session-expired-dialog{max-height:95vh}.session-header{padding:.875rem 1.25rem .5rem}.session-content{padding:1rem 1.25rem}.session-buttons{flex-direction:row;padding:.875rem 1.25rem}.continue-session-button,.relogin-button{min-width:100px;width:auto}}@media (hover:none) and (pointer:coarse){.continue-session-button,.relogin-button{min-height:44px;padding:.75rem 1rem}.choice-option{min-height:40px}}@media print{.session-expired-backdrop{display:none!important}}@media (prefers-contrast:high){.session-expired-dialog{border:3px solid #000}.session-warning-box{border:2px solid #856404}.choice-option,.continue-session-button,.relogin-button{border:2px solid #000}}@media (prefers-reduced-motion:reduce){.choice-option,.continue-session-button,.relogin-button,.session-clock-icon,.session-expired-backdrop,.session-expired-dialog{animation:none;transition:none}.choice-option:hover,.continue-session-button:hover,.relogin-button:hover{transform:none}.continue-session-button:before,.relogin-button:before{display:none}}.clear-read-btn{align-items:center;background:linear-gradient(135deg,#10b981,#059669);border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:.875rem;font-weight:600;gap:.5rem;padding:.5rem 1rem;transition:all .2s ease}.clear-read-btn:hover{background:linear-gradient(135deg,#059669,#047857);transform:translateY(-1px)}.notification-actions{border-top:1px solid #0000001a;display:flex;gap:.75rem;justify-content:space-between;padding:1rem}.notif-overlay{align-items:flex-start;animation:fadeIn .2s ease-out;background:#00000080;display:flex;height:100vh;justify-content:flex-end;left:0;padding:80px 20px 20px;position:fixed;top:0;width:100vw;z-index:25000}.notif-container{animation:slideDown .3s ease-out;background:#fff;border:1px solid #e1e5e9;border-radius:8px;box-shadow:0 8px 24px #00000026;display:flex;flex-direction:column;max-height:calc(100vh - 120px);max-width:100%;overflow:hidden;width:400px}.notif-top-bar{align-items:center;background:#f8f9fa;border-bottom:1px solid #e1e5e9;display:flex;justify-content:space-between;padding:1.25rem 1.5rem}.notif-top-bar h3{color:#2c3e50;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;font-size:1.125rem;font-weight:600;margin:0}.notif-controls{align-items:center;display:flex;gap:.75rem}.read-status-badge{background:#e8f5e8;border:1px solid #c8e6c9;border-radius:12px;color:#2e7d32;font-size:.75rem;font-weight:500;padding:.25rem .75rem;-webkit-user-select:none;user-select:none}.panel-close-btn{align-items:center;background:#0000;border:1px solid #cdd4da;border-radius:4px;color:#6c757d;cursor:pointer;display:flex;font-size:.9rem;height:32px;justify-content:center;transition:all .2s ease;width:32px}.panel-close-btn:hover{background:#f8f9fa;border-color:#adb5bd;color:#495057}.notif-content-area{background:#fff;flex:1 1;max-height:450px;overflow-y:auto}.empty-state{align-items:center;color:#6c757d;display:flex;flex-direction:column;gap:1rem;padding:3rem 2rem}.empty-icon{color:#ced4da}.empty-state p{color:#6c757d;font-size:1rem;font-weight:500}.notif-card{align-items:flex-start;border-bottom:1px solid #f1f3f4;cursor:default;display:flex;gap:1rem;padding:1rem 1.5rem;transition:background-color .2s ease}.notif-card:hover{background-color:#f8f9fa}.notif-card:last-child{border-bottom:none}.notif-main-content{align-items:flex-start;display:flex;flex:1 1;gap:.75rem;min-width:0}.notif-icon-wrapper{align-items:center;border:2px solid;border-radius:50%;box-shadow:0 2px 4px #0000001a;display:flex;flex-shrink:0;font-size:1.1rem;height:36px;justify-content:center;position:relative;transition:all .2s ease;width:36px}.notif-icon-wrapper.error{background:linear-gradient(135deg,#f8d7da,#f5c6cb);border-color:#f5c6cb;color:#721c24}.notif-icon-wrapper.error:before{color:#721c24;content:"✕";font-size:1.1rem;font-weight:700}.notif-icon-wrapper.error .fa-exclamation-triangle,.notif-icon-wrapper.error .fa-times-circle{color:#721c24;font-size:1rem}.notif-icon-wrapper.info{background:linear-gradient(135deg,#d1ecf1,#bee5eb);border-color:#bee5eb;color:#0c5460}.notif-icon-wrapper.info:before{color:#0c5460;content:"i";font-size:1.3rem;font-style:italic;font-weight:700}.notif-icon-wrapper.info .fa-info,.notif-icon-wrapper.info .fa-info-circle{color:#0c5460;font-size:1rem}.notif-icon-wrapper.warning{background:linear-gradient(135deg,#fff3cd,#ffeaa7);border-color:#ffeaa7;color:#856404}.notif-icon-wrapper.warning:before{color:#856404;content:"⚠";font-size:1.1rem}.notif-icon-wrapper.warning .fa-exclamation-triangle,.notif-icon-wrapper.warning .fa-warning{color:#856404;font-size:1rem}.notif-card:hover .notif-icon-wrapper{box-shadow:0 4px 12px #00000026;transform:scale(1.1)}.notif-card:hover .notif-icon-wrapper.success{background:linear-gradient(135deg,#c3e6cb,#a3d5a8);border-color:#a3d5a8}.notif-card:hover .notif-icon-wrapper.error{background:linear-gradient(135deg,#f5c6cb,#f1b2b7);border-color:#f1b2b7}.notif-card:hover .notif-icon-wrapper.info{background:linear-gradient(135deg,#bee5eb,#a6d4db);border-color:#a6d4db}.notif-card:hover .notif-icon-wrapper.warning{background:linear-gradient(135deg,#ffeaa7,#ffdf7e);border-color:#ffdf7e}.notif-icon-wrapper.team-request:before{content:"👥";font-size:1rem}.notif-icon-wrapper.team-accepted:before{content:"🎉";font-size:1rem}.notif-icon-wrapper.team-rejected:before{content:"❌";font-size:1rem}.notif-icon-wrapper.announcement:before{content:"📢";font-size:1rem}.notif-message-area{display:flex;flex:1 1;flex-direction:column;gap:.375rem;min-width:0}.notif-message-area p{word-wrap:break-word;color:#2c3e50;font-size:.9rem;font-weight:400;line-height:1.4;margin:0;overflow-wrap:break-word;white-space:normal}.notif-message-area small{color:#6c757d;font-size:.75rem;font-weight:400}.notif-delete-btn{align-items:center;background:#0000;border:none;border-radius:4px;color:#adb5bd;cursor:pointer;display:flex;flex-shrink:0;font-size:.8rem;height:24px;justify-content:center;transition:all .2s ease;width:24px}.notif-delete-btn:hover{background:#ffebee;color:#c62828}.notif-bottom-actions{background:#f8f9fa;border-top:1px solid #e1e5e9;display:flex;justify-content:center;padding:1rem 1.5rem}.delete-all-btn{align-items:center;background:#dc3545;border:none;border-radius:4px;color:#fff;cursor:pointer;display:flex;font-size:.875rem;font-weight:500;gap:.5rem;justify-content:center;min-width:120px;padding:.625rem 1.5rem;transition:background-color .2s ease}.delete-all-btn:hover{background:#c82333}.delete-all-btn:active{background:#bd2130}@keyframes slideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.notif-content-area::-webkit-scrollbar{width:8px}.notif-content-area::-webkit-scrollbar-track{background:#f1f3f4}.notif-content-area::-webkit-scrollbar-thumb{background:#cdd4da;border-radius:4px}.notif-content-area::-webkit-scrollbar-thumb:hover{background:#adb5bd}@media (max-width:768px){.notif-overlay{align-items:center;justify-content:center;padding:20px 15px}.notif-container{max-height:80vh;max-width:380px;width:100%}.notif-icon-wrapper{font-size:1rem;height:32px;width:32px}.notif-icon-wrapper.error:before,.notif-icon-wrapper.info:before,.notif-icon-wrapper.success:before,.notif-icon-wrapper.warning:before{font-size:1rem}}@media (max-width:480px){.notif-icon-wrapper{font-size:.9rem;height:28px;width:28px}.notif-icon-wrapper.error:before,.notif-icon-wrapper.info:before,.notif-icon-wrapper.success:before,.notif-icon-wrapper.warning:before{font-size:.9rem}}@media print{.notif-overlay{display:none}}@media (prefers-contrast:high){.notif-container,.notif-icon-wrapper{border:2px solid #000}}@media (prefers-reduced-motion:reduce){.notif-container,.notif-icon-wrapper,.notif-overlay{animation:none;transition:none}.notif-card:hover .notif-icon-wrapper{transform:none}}.notif-icon-wrapper.success{background:linear-gradient(135deg,#d4edda,#c3e6cb);border-color:#c3e6cb;color:#155724}.notif-icon-wrapper.success:before{align-items:center;color:#155724;content:"✓";display:flex;font-size:1.2rem;font-weight:700;justify-content:center}.notif-icon-wrapper.success .fa-check,.notif-icon-wrapper.success .fa-check-circle{color:#155724;display:block;font-size:1rem}.notif-icon-wrapper:not(.success):not(.error):not(.info):not(.warning){background:linear-gradient(135deg,#e3f2fd,#bbdefb);border-color:#bbdefb;color:#1565c0}.notif-icon-wrapper:not(.success):not(.error):not(.info):not(.warning):before{color:#1565c0;content:"ℹ";font-size:1.2rem}.fpage-container{box-sizing:border-box;margin:0 auto;max-width:1200px;padding:2rem 1rem}.fpage-header{border-bottom:2px solid #e5e7eb;margin-bottom:2rem;padding-bottom:1rem;text-align:center}.fpage-header h1{align-items:center;color:#1f2937;display:flex;flex-wrap:wrap;font-size:1.8rem;font-weight:600;gap:.5rem;justify-content:center;margin-bottom:.5rem}.fpage-header p{color:#6b7280;font-size:1rem;line-height:1.5;margin:0 auto;max-width:600px}.fpage-search-filter{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;box-sizing:border-box;display:flex;flex-direction:column;gap:1rem;margin-bottom:2rem;margin-left:auto;margin-right:auto;max-width:800px;padding:1rem}.fpage-search-box{position:relative;width:100%}.fpage-search-box input{background:#fff;border:1px solid #d1d5db;border-radius:6px;box-sizing:border-box;font-size:.9rem;padding:.75rem 1rem .75rem 2.5rem;transition:border-color .2s ease;width:100%}.fpage-search-box input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.fpage-search-icon{color:#9ca3af;left:.75rem;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%)}.fpage-refresh-container{display:flex;justify-content:flex-end}.fpage-refresh-btn{background:#0000;border:1.5px solid #3b82f6;border-radius:6px;color:#3b82f6;cursor:pointer;font-size:.8rem;font-weight:500;min-width:85px;padding:.35rem .6rem;transition:all .2s ease}.fpage-refresh-btn:disabled{border-color:#93c5fd;color:#93c5fd;cursor:not-allowed}.fpage-refresh-btn:not(:disabled):hover{background:#3b82f6;box-shadow:0 4px 12px #3b82f666;color:#fff;transform:translateY(-1px)}.fpage-filter-controls{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:center}.fpage-filter-group{display:flex;flex-direction:column;gap:.5rem}.fpage-filter-group label{color:#374151;font-size:.85rem;font-weight:500}.fpage-filter-select{background:#fff;border:1px solid #d1d5db;border-radius:6px;cursor:pointer;font-size:.85rem;min-width:140px;padding:.5rem;transition:border-color .2s ease}.fpage-filter-select:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.fpage-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin-top:2rem}.fpage-card{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 2px 8px #00000014;display:flex;flex-direction:column;min-height:320px;overflow:hidden;padding:1.25rem;position:relative;text-align:center;transition:all .3s ease}.fpage-card:hover{border-color:#3b82f6;box-shadow:0 8px 25px #0000001f;transform:translateY(-4px)}.fpage-card-header{align-items:center;display:flex;flex-direction:column;margin-bottom:1rem;width:100%}.fpage-avatar-container{border:3px solid #e5e7eb;border-radius:50%;box-shadow:0 4px 12px #0000001a;height:70px;margin-bottom:.75rem;overflow:hidden;position:relative;transition:all .3s ease;width:70px}.fpage-avatar-container:hover{border-color:#3b82f6;box-shadow:0 6px 20px #3b82f64d;transform:scale(1.05)}.fpage-avatar-img{height:100%!important;object-fit:cover;transition:transform .3s ease;width:100%!important}.fpage-avatar-fallback{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;font-size:1.5rem;font-weight:700;height:100%;justify-content:center;letter-spacing:1px;width:100%}.fpage-info h3{color:#1a202c;font-size:1.1rem;font-weight:600;line-height:1.3;margin:.5rem 0 .25rem;word-break:break-word}.fpage-role{color:#6b7280;font-size:.85rem;font-weight:500;margin-bottom:.5rem}.fpage-availability .available{align-items:center;background:#10b9811a;border-radius:12px;color:#10b981;display:flex;font-size:.8rem;font-weight:600;gap:.4rem;padding:.25rem .5rem}.fpage-details{flex-grow:1;margin:1rem 0;width:100%}.fpage-detail-item{align-items:flex-start;display:flex;font-size:.85rem;gap:.5rem;margin-bottom:.5rem;text-align:left}.fpage-detail-icon{color:#6b7280;margin-top:.1rem;min-width:16px}.fpage-detail-label{color:#374151;flex-shrink:0;font-weight:500;min-width:60px}.fpage-detail-value{color:#1f2937;flex:1 1;word-break:break-word}.fpage-expertise-section{border-top:1px solid #e5e7eb;margin:1rem 0;padding-top:1rem;width:100%}.fpage-expertise-section h5{color:#1f2937;font-size:.9rem;font-weight:600;margin:0 0 .5rem;text-align:left}.fpage-expertise-tags{display:flex;flex-wrap:wrap;gap:.4rem;justify-content:center}.fpage-expertise-tag{background:#dbeafe;border-radius:4px;color:#1d4ed8;font-size:.75rem;font-weight:500;padding:.2rem .4rem}.fpage-expertise-tag.more{background:#f3f4f6;color:#6b7280}.fpage-stats{background:#f9fafb;border-radius:6px;box-sizing:border-box;display:flex;gap:.5rem;justify-content:space-between;margin:1rem 0;padding:.75rem;width:100%}.fpage-stat-item{align-items:center;color:#6b7280;display:flex;flex:1 1;font-size:.75rem;gap:.25rem;text-align:center}.fpage-stat-icon{color:#9ca3af;font-size:.8rem}.fpage-card-actions{display:flex;flex-wrap:wrap;gap:.6rem;justify-content:center;margin-top:auto;width:100%}.fpage-btn{align-items:center;border:none;border-radius:6px;box-sizing:border-box;cursor:pointer;display:inline-flex;flex:0 1 auto;font-size:.8rem;font-weight:500;gap:.4rem;justify-content:center;max-width:150px;min-width:100px;padding:.5rem .9rem;text-align:center;text-decoration:none;transition:all .2s ease;white-space:nowrap}.fpage-btn svg{flex-shrink:0;height:16px;width:16px}.fpage-btn span{flex-shrink:0}.fpage-btn.primary{background:#3b82f6;box-shadow:0 2px 4px #3b82f64d;color:#fff}.fpage-btn.primary:hover:not(:disabled){background:#2563eb;box-shadow:0 4px 12px #2563eb66;transform:translateY(-1px)}.fpage-btn.primary:disabled{background:#cbd5e1;box-shadow:none;color:#94a3b8;cursor:not-allowed;transform:none}.fpage-btn.secondary{background:#f1f5f9;border:1px solid #e2e8f0;color:#475569}.fpage-btn.secondary:hover{background:#e2e8f0;box-shadow:0 2px 8px #0000001a;color:#334155;transform:translateY(-1px)}.fpage-error-state,.fpage-loading-state,.fpage-no-faculty{color:#6b7280;padding:3rem 1rem;text-align:center}.fpage-loading-state .spinning{animation:spin 1s linear infinite;color:#3b82f6;font-size:2rem}.fpage-team-notice{align-items:flex-start;background:#fef3c7;border:1px solid #f59e0b;border-radius:8px;display:flex;gap:1rem;margin-top:2rem;padding:1.5rem}.fpage-notice-icon{color:#f59e0b;flex-shrink:0;font-size:1.25rem;margin-top:.25rem}.fpage-notice-content{flex:1 1}.fpage-notice-content h4{color:#92400e;font-size:1.1rem;margin:0 0 .5rem}.fpage-notice-content p{color:#92400e;font-size:.9rem;margin:0 0 1rem}.fpage-notice-actions{display:flex;flex-wrap:wrap;gap:.5rem}.fpage-notice-actions .primary-btn,.fpage-notice-actions .secondary-btn{align-items:center;border-radius:6px;cursor:pointer;display:flex;font-size:.85rem;font-weight:500;gap:.3rem;justify-content:center;min-width:100px;padding:.4rem .8rem;transition:all .2s ease}.fpage-notice-actions .primary-btn{background:#3b82f6;border:none;color:#fff}.fpage-notice-actions .primary-btn:hover{background:#2563eb;transform:translateY(-1px)}.fpage-notice-actions .secondary-btn{background:#f3f4f6;border:1px solid #e2e8f0;color:#3b82f6}.fpage-notice-actions .secondary-btn:hover{background:#e0e7ff;color:#2563eb}@media (max-width:480px){.fpage-container{padding:1rem .75rem}.fpage-header h1{flex-direction:column;font-size:1.4rem;gap:.25rem}.fpage-header p{font-size:.9rem}.fpage-search-filter{padding:.75rem}.fpage-grid{gap:1rem;grid-template-columns:1fr!important}.fpage-card{min-height:auto;padding:1rem}.fpage-avatar-container{height:60px;width:60px}.fpage-avatar-fallback{font-size:1.2rem}.fpage-btn{font-size:.85rem;max-width:100%;min-width:100%;padding:.5rem}.fpage-card-actions{flex-direction:column;gap:.4rem}.fpage-refresh-btn{font-size:.75rem;min-width:80px;padding:.3rem .5rem}.fpage-filter-controls{flex-direction:column;gap:.5rem}.fpage-filter-select{min-width:auto;width:100%}.fpage-team-notice{gap:.75rem;padding:1rem}.fpage-notice-actions,.fpage-team-notice{flex-direction:column}.fpage-notice-actions .primary-btn,.fpage-notice-actions .secondary-btn{min-width:auto;width:100%}}@media (min-width:481px) and (max-width:640px){.fpage-grid{gap:1.25rem;grid-template-columns:1fr!important}.fpage-btn{font-size:.8rem;max-width:120px;min-width:85px;padding:.45rem .7rem}.fpage-filter-controls{justify-content:center}}@media (min-width:641px) and (max-width:768px){.fpage-grid{gap:1.25rem;grid-template-columns:repeat(2,1fr)!important}.fpage-btn{max-width:120px;min-width:90px;padding:.45rem .7rem}}@media (min-width:769px) and (max-width:1024px){.fpage-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))!important}.fpage-btn{max-width:125px;min-width:95px;padding:.45rem .75rem}}@media (min-width:1025px){.fpage-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.fpage-btn{font-size:.85rem;max-width:160px;min-width:110px;padding:.5rem 1rem}.fpage-btn.primary{max-width:170px;min-width:120px}}@media (min-width:1200px){.fpage-btn{max-width:165px;min-width:115px;padding:.55rem 1.1rem}}@media (hover:none) and (pointer:coarse){.fpage-btn{min-height:44px;padding:.6rem 1rem}.fpage-refresh-btn{min-height:44px;padding:.5rem .7rem}.fpage-btn:hover,.fpage-card:hover{transform:none}}@media (prefers-reduced-motion:reduce){.fpage-avatar-container,.fpage-btn,.fpage-card,.fpage-refresh-btn{transition:none}.fpage-avatar-container:hover,.fpage-btn:hover,.fpage-card:hover{transform:none}.fpage-loading-state .spinning{animation:none}}.fpage-btn{overflow:hidden;text-overflow:ellipsis}.fpage-btn:not(.fpage-btn-icon-only){min-width:fit-content}.fpage-btn>svg:first-child{flex-shrink:0;margin-right:.3rem}@media (min-width:1025px){.fpage-btn:contains("Request Supervision"),.fpage-btn[title*=supervision]{max-width:180px;min-width:130px}}.materials-page{background:#fafbfc;max-width:1400px;padding:2rem 1rem}.materials-page .library-title{color:#1a202c;font-size:2.25rem;font-weight:700;letter-spacing:-.025em;margin-bottom:.75rem;text-align:center}.materials-page .subtitle{color:#64748b;font-size:1.1rem;font-weight:400;margin-bottom:3rem;text-align:center}.materials-page .controls{background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 1px 3px #0000000d;display:flex;flex-direction:column;gap:1.5rem;margin-bottom:2.5rem;padding:2rem}.materials-page .search-container{margin:0 auto;max-width:500px;position:relative;width:100%}.materials-page .search-input{background:#f8fafc;border:2px solid #e2e8f0;border-radius:12px;box-sizing:border-box;font-size:1rem;padding:.875rem 1rem .875rem 3rem;transition:all .2s ease;width:100%}.materials-page .search-input:focus{background:#fff;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.materials-page .search-icon{color:#94a3b8;font-size:1.125rem;left:1rem;position:absolute;top:50%;transform:translateY(-50%)}.materials-page .filter-row{align-items:center;display:flex;flex-wrap:wrap;gap:2rem;justify-content:center}.materials-page .category-filter{background:#fff;border:2px solid #e2e8f0;border-radius:10px;color:#475569;cursor:pointer;font-size:.925rem;font-weight:500;min-width:150px;padding:.75rem 1.25rem;transition:all .2s ease}.materials-page .category-filter:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.materials-page .phase-selector{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:12px;display:flex;gap:.5rem;padding:.375rem}.materials-page .phase-btn{background:#0000;border:none;border-radius:8px;color:#64748b;cursor:pointer;font-size:.875rem;font-weight:600;padding:.625rem 1.25rem;position:relative;transition:all .2s ease}.materials-page .phase-btn.active{background:#fff;box-shadow:0 2px 4px #0000000d;color:#3b82f6}.materials-page .phase-btn:hover:not(.active){background:#ffffff80;color:#475569}.materials-page .section-header{margin:3rem 0 2rem;text-align:center}.materials-page .section-header h2{align-items:center;color:#1e293b;display:flex;font-size:1.75rem;font-weight:700;gap:.75rem;justify-content:center;margin-bottom:.5rem}.materials-page .phase-badge{background:linear-gradient(135deg,#3b82f6,#1d4ed8);border-radius:20px;color:#fff;font-size:.875rem;font-weight:600;margin-left:.5rem;padding:.375rem 1rem}.materials-page .materials-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));margin-top:2rem}.materials-page .material-card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 1px 3px #0000000d;overflow:hidden;padding:0;position:relative;transition:all .3s ease}.materials-page .material-card:hover{border-color:#3b82f6;box-shadow:0 8px 25px #0000001a;transform:translateY(-4px)}.materials-page .material-card .card-header{align-items:flex-start;border-bottom:1px solid #f1f5f9;display:flex;justify-content:space-between;margin:0;padding:1.5rem 1.5rem 1rem}.materials-page .file-icon{color:#64748b;font-size:2.5rem;transition:color .2s ease}.materials-page .material-card:hover .file-icon{color:#3b82f6}.materials-page .file-icon[style*="color: #e53e3e"]{color:#ef4444!important}.materials-page .file-icon[style*="color: #2563eb"]{color:#3b82f6!important}.materials-page .file-icon[style*="color: #ea580c"]{color:#f97316!important}.materials-page .file-meta{display:flex;flex-direction:column;gap:.25rem;text-align:right}.materials-page .file-meta .category{background:#f1f5f9;border-radius:12px;color:#3b82f6;display:inline-block;font-size:.75rem;font-weight:600;padding:.25rem .75rem}.materials-page .file-meta .date{color:#64748b;font-size:.75rem;font-weight:500}.materials-page .material-card .card-body{padding:1rem 1.5rem 1.5rem}.materials-page .material-title{color:#1e293b;font-size:1.25rem;font-weight:700;line-height:1.4;margin:0 0 .75rem}.materials-page .material-description{color:#64748b;font-size:.925rem;line-height:1.6;margin-bottom:1.25rem}.materials-page .file-details{display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;margin-bottom:1.25rem}.materials-page .detail-item{align-items:center;color:#64748b;display:flex;font-size:.875rem;gap:.5rem}.materials-page .detail-icon{color:#94a3b8;font-size:.875rem}.materials-page .file-category,.materials-page .material-phase{border-radius:16px;display:inline-block;font-size:.75rem;font-weight:600;margin-right:.5rem;padding:.375rem .875rem}.materials-page .file-category{background:#f0fdf4;border:1px solid #bbf7d0;color:#16a34a}.materials-page .material-phase{background:#eff6ff;border:1px solid #bfdbfe;color:#2563eb}.materials-page .download-btn{align-items:center;background:linear-gradient(135deg,#3b82f6,#1d4ed8);border:none;border-radius:12px;color:#fff;cursor:pointer;display:flex;font-size:.925rem;font-weight:600;gap:.5rem;justify-content:center;margin-top:auto;padding:.875rem 1.5rem;transition:all .2s ease;width:100%}.materials-page .download-btn:hover{background:linear-gradient(135deg,#1d4ed8,#1e40af);box-shadow:0 4px 12px #3b82f64d;transform:translateY(-1px)}.materials-page .download-icon{font-size:1rem}.materials-page .loading-materials,.materials-page .no-materials{align-items:center;color:#64748b;display:flex;flex-direction:column;justify-content:center;padding:4rem 2rem}.materials-page .no-materials{grid-column:1/-1;text-align:center}.materials-page .empty-icon{color:#cbd5e1;font-size:4rem;margin-bottom:1rem}@media (max-width:1024px){.materials-page{padding:1.5rem 1rem}.materials-page .library-title{font-size:2rem}.materials-page .materials-grid{gap:1.25rem;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.materials-page .controls{padding:1.5rem}.materials-page .filter-row{gap:1rem}}@media (max-width:768px){.materials-page{padding:1rem .75rem}.materials-page .library-title{font-size:1.75rem}.materials-page .subtitle{font-size:1rem;margin-bottom:2rem}.materials-page .controls{border-radius:12px;padding:1.25rem}.materials-page .materials-grid{gap:1rem;grid-template-columns:1fr}.materials-page .filter-row{align-items:stretch;flex-direction:column;gap:1rem}.materials-page .phase-selector{justify-content:center}.materials-page .category-filter{width:100%}.materials-page .material-card .card-header{flex-direction:column;gap:1rem;text-align:center}.materials-page .file-meta{text-align:center}.materials-page .file-details{flex-direction:column;gap:.75rem}}@media (max-width:480px){.materials-page{padding:.75rem .5rem}.materials-page .library-title{font-size:1.5rem;margin-bottom:.5rem}.materials-page .subtitle{font-size:.925rem;margin-bottom:1.5rem;padding:0 1rem}.materials-page .controls{margin-bottom:1.5rem;padding:1rem}.materials-page .search-input{font-size:.925rem;padding:.75rem .75rem .75rem 2.5rem}.materials-page .phase-btn{font-size:.8rem;padding:.5rem .875rem}.materials-page .material-card .card-header{padding:1.25rem 1.25rem .75rem}.materials-page .material-card .card-body{padding:1rem 1.25rem 1.25rem}.materials-page .material-title{font-size:1.125rem}.materials-page .material-description{font-size:.875rem}.materials-page .section-header h2{flex-direction:column;font-size:1.5rem;gap:.5rem}}@media (max-width:360px){.materials-page .phase-selector{flex-direction:column;gap:.25rem}.materials-page .phase-btn{padding:.5rem;text-align:center}.materials-page .file-icon{font-size:2rem}.materials-page .material-title{font-size:1rem}}.library-title{color:#2d3748;color:var(--text-primary);font-size:2.5rem;margin-bottom:1.5rem;text-align:center}.controls,.library-title{align-items:center;display:flex;gap:1rem;justify-content:center}.controls{flex-wrap:wrap;margin-bottom:3rem}.search-container{flex:1 1;max-width:500px;min-width:250px;position:relative}.search-input{border:1px solid #e2e8f0;border:1px solid var(--border-color);border-radius:.5rem;border-radius:var(--radius-lg);box-sizing:border-box;padding:.8rem 1rem .8rem 2.5rem;transition:all .3s ease}.search-input:focus{border-color:#2d3748;border-color:var(--primary-color);box-shadow:0 0 0 2px #2d37481a}.search-icon{color:#a0aec0;color:var(--gray-400);pointer-events:none;top:50%;transform:translateY(-50%)}.category-filter{background:#fff;background:var(--white);border:1px solid #e2e8f0;border:1px solid var(--border-color);border-radius:.5rem;border-radius:var(--radius-lg);cursor:pointer;font-size:.95rem;min-width:150px;padding:.8rem 1rem;transition:all .3s ease}.category-filter:focus{border-color:#2d3748;border-color:var(--primary-color);outline:none}.phase-selector{background:#edf2f7;background:var(--gray-100);border-radius:.5rem;border-radius:var(--radius-lg);display:flex;gap:.5rem;padding:.25rem}.phase-btn{background:#0000;border:1px solid #0000;border-radius:.375rem;border-radius:var(--radius-md);color:#4a5568;color:var(--text-secondary);cursor:pointer;font-size:.875rem;font-weight:500;padding:.5rem 1rem;transition:all .2s ease}.phase-btn.active{background:#fff;background:var(--white);border-color:#e2e8f0;border-color:var(--border-color);box-shadow:0 1px 3px 0 #0000001a;box-shadow:var(--shadow-sm);color:#2d3748;color:var(--text-primary)}.phase-btn:hover:not(.active){background:#ffffffb3;color:#2d3748;color:var(--text-primary)}.materials-grid{align-items:stretch;margin-bottom:2rem}.section-header{border-bottom:2px solid #e2e8f0;border-bottom:2px solid var(--border-color);margin:3rem 0 1.5rem;padding-bottom:1rem}.section-header h2{align-items:center;color:#2d3748;color:var(--text-primary);display:flex;font-size:1.75rem;font-weight:600;gap:.75rem;margin:0}.section-icon{color:#2d3748;color:var(--primary-color);font-size:1.5rem}.phase-badge{background:#2d3748;background:var(--primary-color);border-radius:1rem;font-size:.75rem;margin-left:.5rem;padding:.25rem .75rem}.material-card{background:var(--white);border:1px solid var(--border-color);border-radius:.75rem;border-radius:var(--radius-xl);box-shadow:0 1px 3px 0 #0000001a;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;height:100%;min-height:400px;padding:0}.material-card:hover{border-color:#2d3748;border-color:var(--primary-color);box-shadow:0 10px 15px -3px #0000001a;box-shadow:var(--shadow-lg);transform:translateY(-4px)}.material-card .card-header{align-items:flex-start;background:linear-gradient(135deg,#f7fafc,#fff);background:linear-gradient(135deg,var(--gray-50) 0,var(--white) 100%);border-bottom:1px solid #e2e8f0;border-bottom:1px solid var(--border-color);display:flex;flex-shrink:0;justify-content:space-between;padding:1.5rem 1.5rem 1rem}.file-icon{color:#4a5568;color:var(--text-secondary);font-size:2.5rem}.material-card:hover .file-icon{transform:scale(1.1)}.file-meta{flex-direction:column;gap:.25rem;text-align:right}.file-meta .category{background:#2d37481a;border-radius:1rem;color:#2d3748;color:var(--primary-color);display:inline-block;font-size:.875rem;font-weight:600;padding:.25rem .75rem}.file-meta .date{color:#718096;color:var(--text-muted);font-size:.75rem;font-weight:400}.material-card-body{display:flex;flex:1 1;flex-direction:column;gap:1rem;padding:1.5rem}.material-title{-webkit-line-clamp:2;color:#2d3748;color:var(--text-primary);font-weight:600;line-height:1.3;margin:0;min-height:1.6rem}.material-description,.material-title{-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.material-description{-webkit-line-clamp:3;color:#4a5568;color:var(--text-secondary);flex:1 1;font-size:.9rem;max-height:4.8rem;min-height:3rem}.file-details{align-items:center;flex-wrap:wrap;gap:1.5rem;justify-content:space-between;margin:1rem 0}.detail-item{color:#4a5568;color:var(--text-secondary);font-size:.85rem;gap:.5rem}.detail-icon{color:#718096;color:var(--text-muted);font-size:.875rem}.file-categories{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem;margin-top:auto}.file-category{background:#edf2f7;background:var(--gray-100);border:1px solid #e2e8f0;border:1px solid var(--border-color);border-radius:20px;color:#2d3748;color:var(--text-primary);font-weight:500}.file-category,.material-phase{font-size:.75rem;padding:.25rem .75rem}.material-phase{background:#2d3748;background:var(--primary-color);border-radius:20px;color:#fff;font-weight:600}.download-btn{background:var(--white);border:2px solid #2d3748;border:2px solid var(--primary-color);border-radius:0 0 .75rem .75rem;border-radius:0 0 var(--radius-xl) var(--radius-xl);color:#2d3748;color:var(--primary-color);flex-shrink:0;font-size:.9rem;font-weight:600;gap:.75rem;margin-top:auto;min-height:54px;padding:.875rem 1rem;transition:all .3s ease;width:100%}.download-btn:hover{background:#2d3748;background:var(--primary-color);box-shadow:0 4px 12px #2d37484d;transform:translateY(-1px)}.download-btn:active{transform:translateY(0)}.download-icon{font-size:1.1rem;transition:transform .2s ease}.download-btn:hover .download-icon{transform:scale(1.1)}.material-card .file-icon[style*="color: #e53e3e"]{color:#e53e3e!important}.material-card .file-icon[style*="color: #2563eb"]{color:#2563eb!important}.material-card .file-icon[style*="color: #ea580c"]{color:#ea580c!important}@media (max-width:1200px){.materials-grid{gap:1.25rem;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.material-card{min-height:380px}.controls{align-items:stretch;flex-direction:column;gap:1rem}.search-container{max-width:100%}}@media (max-width:768px){.materials-page{padding:1rem}.library-title{flex-direction:column;font-size:2rem;gap:.5rem}.materials-grid{gap:1rem;grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}.material-card{min-height:auto}.material-card .card-header{padding:1.25rem 1.25rem 1rem}.material-card-body{padding:1.25rem}.file-details{align-items:flex-start;flex-direction:column;gap:1rem}.phase-selector{justify-content:center;width:100%}.phase-btn{flex:1 1;text-align:center}}@media (max-width:480px){.materials-grid{gap:1rem;grid-template-columns:1fr}.material-title{font-size:1.1rem}.material-description{font-size:.85rem}.download-btn{font-size:.875rem;padding:1rem}.controls{gap:.75rem}.search-container{min-width:auto}.file-meta{text-align:left}.file-categories{justify-content:center}}.materials-loading{align-items:center;color:#4a5568;color:var(--text-secondary);display:flex;font-size:1.1rem;justify-content:center;min-height:300px}.materials-loading .spinner{margin-right:1rem}.no-materials{align-items:center;color:#4a5568;color:var(--text-secondary);display:flex;flex-direction:column;grid-column:1/-1;justify-content:center;min-height:300px;padding:4rem 2rem;text-align:center}.no-materials-icon{color:#cbd5e0;color:var(--gray-300);font-size:4rem;margin-bottom:1rem}.no-materials h3{color:#2d3748;color:var(--text-primary);margin-bottom:.5rem}.no-materials p{line-height:1.5;margin-bottom:1.5rem;max-width:400px}@media (prefers-reduced-motion:reduce){.download-btn,.material-card,.phase-btn{transition:none}.download-btn:hover,.material-card:hover{transform:none}}@media print{.controls,.download-btn{display:none!important}.materials-grid{gap:1rem;grid-template-columns:repeat(2,1fr)}.material-card{border:1px solid #ccc!important;box-shadow:none!important;break-inside:avoid;page-break-inside:avoid}}.request-sent-button{background:#10b981}.blocked-btn,.request-sent-button{font-weight:500;padding:.75rem 1.5rem}.blocked-btn{background:#dc2626;border-radius:8px}.join-button small{color:#fffc}.request-sent-button{background:#4ade80!important}.blocked-btn,.request-sent-button{border-radius:.5rem;gap:.5rem;padding:.75rem 1rem}.blocked-btn{background:#ef4444!important;opacity:.9}.join-button small{display:block;font-size:.75rem;margin-top:.25rem;opacity:.8}.ineligible-dashboard{background:#f8f9fa;margin:2rem auto;max-width:800px;min-height:100vh;padding:2rem}.eligibility-notice{align-items:flex-start;background:#fff3cd;border:1px solid #ffeaa7;border-radius:12px;display:flex;gap:1.5rem;margin-bottom:2rem;padding:2rem}.notice-icon{color:#856404;flex-shrink:0;font-size:3rem}.notice-content h2{color:#856404;font-size:1.5rem;margin:0 0 1rem}.notice-content p{color:#856404;line-height:1.6;margin:.5rem 0}.credits-status{background:#ffffffb3;border-radius:8px;margin:1.5rem 0;padding:1rem}.credits-info{align-items:center;display:flex;gap:.5rem;justify-content:center;margin-bottom:1rem}.current-credits{color:#dc3545;font-size:2rem;font-weight:700}.credits-separator{color:#6c757d;font-size:1.5rem}.required-credits{color:#28a745;font-size:2rem;font-weight:700}.credits-label{color:#6c757d;font-size:1rem;margin-left:.5rem}.progress-bar{background:#e9ecef;border-radius:10px;height:20px;width:100%}.progress-fill{background:linear-gradient(90deg,#dc3545,#ffc107)}.eligibility-message{background:#ffffffe6;border-left:4px solid #856404;border-radius:8px;margin-top:1rem;padding:1rem}.limited-features{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:2rem}.limited-features h3{color:#495057;margin:0 0 1.5rem}.feature-list{grid-gap:1rem;display:grid;gap:1rem}.feature-item{align-items:center;border-radius:8px;display:flex;gap:1rem;padding:1rem;transition:all .2s ease}.feature-item.available{background:#d4edda;border:1px solid #c3e6cb;color:#155724}.feature-item.restricted{background:#f8d7da;border:1px solid #f5c6cb;color:#721c24;opacity:.7}.feature-item i{font-size:1.2rem;text-align:center;width:24px}@media (max-width:768px){.ineligible-dashboard{margin:1rem;padding:1rem}.eligibility-notice{flex-direction:column;text-align:center}.credits-info{flex-wrap:wrap}}.inline-notification{animation:slideInRight .3s ease-out;border-radius:8px;box-shadow:0 4px 12px #00000026;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:14px;line-height:1.4;max-width:500px;min-width:300px;padding:16px 20px;position:fixed;right:20px;top:20px;transform:translateX(0);transition:all .3s ease-in-out;z-index:10000}.inline-notification.success{background-color:#d4edda;border:1px solid #c3e6cb;color:#155724}.inline-notification.error{background-color:#f8d7da;border:1px solid #f5c6cb;color:#721c24}.inline-notification.warning{background-color:#fff3cd;border:1px solid #ffeaa7;color:#856404}.inline-notification.info{background-color:#d1ecf1;border:1px solid #b6dfeb;color:#0c5460}.notification-content{align-items:center;display:flex;gap:10px}.notification-icon{flex-shrink:0;font-size:16px}.notification-message{flex:1 1;font-weight:500}@media (max-width:768px){.inline-notification{font-size:13px;left:10px;max-width:none;min-width:auto;right:10px;top:10px}}.fpage-btn.sent{opacity:.8}.fpage-btn.sent:hover{transform:none}.fpage-btn:disabled{cursor:not-allowed;opacity:.6}.fpage-btn:disabled:hover{transform:none}.fpage-btn.sent{color:#fff;cursor:not-allowed;opacity:.7}.fpage-btn.sent,.fpage-btn.sent:hover{background-color:#28a745}.team-invitations-section{display:flex;justify-content:center;margin:1rem 0}.team-invitations-btn{align-items:center;background:linear-gradient(135deg,#fff,#fafbfc);border:1px solid #cbd5e1;border-radius:6px;box-shadow:0 1px 3px #0000000a;color:#2d3748;cursor:pointer;display:flex;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:14px;font-weight:600;gap:8px;letter-spacing:.2px;min-height:42px;padding:10px 18px;position:relative;text-transform:capitalize;transition:all .2s ease}.team-invitations-btn:hover{background:linear-gradient(135deg,#f7fafc,#edf2f7);border-color:#a0aec0;box-shadow:0 2px 6px #0000000f;transform:translateY(-1px)}.team-invitations-btn:active{box-shadow:0 1px 2px #0000000a;transform:translateY(0)}.team-invitations-btn:focus{border-color:#3182ce;box-shadow:0 0 0 2px #3182ce1a;outline:none}.invitation-icon{color:#4a5568;font-size:16px;transition:color .2s ease}.team-invitations-btn:hover .invitation-icon{color:#2d3748}.invitation-text{color:#4a5568;font-size:14px;letter-spacing:.2px}.invitation-badge{align-items:center;animation:subtlePulse 2s infinite;background:#f56565;border-radius:50%;box-shadow:0 1px 2px #f5656533;color:#fff;display:flex;font-size:10px;font-weight:700;height:16px;justify-content:center;margin-left:4px;min-width:16px;padding:1px 5px}@keyframes subtlePulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.9;transform:scale(1.02)}}.sent-invitations-overlay{align-items:center;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);background:#f8fafcd9;bottom:0;display:flex;justify-content:center;left:0;padding:clamp(.5rem,1.5vw,1rem);position:fixed;right:0;top:0;z-index:1050}.sent-invitations-modal{animation:modalSlideIn .25s ease-out;background:#fff;border:1px solid #e2e8f0;border-radius:clamp(6px,1vw,8px);box-shadow:0 12px 28px #0000000f,0 4px 8px #00000008;display:flex;flex-direction:column;max-height:min(85vh,550px);max-width:min(90vw,450px);overflow:hidden;width:100%}.modal-header-section{align-items:flex-start;background:linear-gradient(135deg,#fff,#f8fafc);border-bottom:1px solid #e2e8f0;color:#1e293b;display:flex;justify-content:space-between;min-height:auto;padding:clamp(.875rem,2.5vw,1.25rem) clamp(1rem,3vw,1.5rem)}.header-content{flex:1 1;margin-right:.75rem}.modal-title{align-items:center;color:#1e293b;display:flex;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:clamp(1rem,2.2vw,1.15rem);font-weight:600;gap:clamp(6px,1.5vw,8px);line-height:1.3;margin:0}.title-icon{color:#475569;flex-shrink:0;font-size:clamp(.9rem,2vw,1rem)}.invitation-summary{color:#64748b;font-size:clamp(.75rem,1.6vw,.8rem);font-weight:500;line-height:1.3;margin-top:clamp(.25rem,.8vw,.375rem)}.header-actions{align-items:center;display:flex;flex-shrink:0;gap:clamp(4px,1vw,6px)}.refresh-sent-requests-btn{align-items:center;background:#fff;border:1px solid #cbd5e1;border-radius:clamp(3px,.8vw,4px);color:#475569;cursor:pointer;display:flex;font-size:clamp(.7rem,1.5vw,.75rem);font-weight:500;gap:clamp(3px,.8vw,4px);min-height:clamp(24px,6vw,28px);padding:clamp(4px,1vw,6px) clamp(6px,1.5vw,8px);transition:all .2s ease;white-space:nowrap}.refresh-sent-requests-btn:hover{background:#f1f5f9;border-color:#94a3b8;color:#1e293b}.modal-close-btn{align-items:center;background:#fff;border:1px solid #cbd5e1;border-radius:clamp(3px,.8vw,4px);color:#64748b;display:flex;flex-shrink:0;font-size:clamp(.8rem,1.8vw,.9rem);height:clamp(24px,6vw,28px);justify-content:center;transition:all .2s ease;width:clamp(24px,6vw,28px)}.modal-close-btn:hover{background:#f1f5f9;border-color:#94a3b8;color:#1e293b}.modal-body-section{background:#fff;flex:1 1;overflow-y:auto;padding:clamp(.75rem,2vw,1rem) clamp(1rem,3vw,1.5rem);scrollbar-color:#cbd5e1 #f1f5f9}.modal-body-section::-webkit-scrollbar{width:5px}.modal-body-section::-webkit-scrollbar-track{background:#f1f5f9;border-radius:2px}.modal-body-section::-webkit-scrollbar-thumb{border-radius:2px}.modal-body-section::-webkit-scrollbar-thumb:hover{background:#94a3b8}.invitations-list{display:flex;flex-direction:column;gap:clamp(.625rem,1.5vw,.75rem)}.invitation-item{background:#fff;border:1px solid #e2e8f0;border-radius:clamp(4px,1vw,6px);box-shadow:0 1px 2px #00000005;padding:clamp(.75rem,2vw,1rem);transition:all .2s ease}.invitation-item:hover{background:#fefefe;border-color:#cbd5e1;box-shadow:0 2px 6px #0000000a}.invitation-header{align-items:center;display:flex;flex-wrap:wrap;gap:clamp(.625rem,1.5vw,.75rem);margin-bottom:clamp(.625rem,1.5vw,.75rem)}.student-avatar{background:linear-gradient(135deg,#64748b,#475569);border:1px solid #e2e8f0;flex-shrink:0;font-size:clamp(.7rem,1.6vw,.8rem);height:clamp(28px,7vw,32px);width:clamp(28px,7vw,32px)}.invitation-details{flex:1 1;min-width:0}.student-name{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:clamp(.8rem,1.8vw,.9rem);font-weight:600;line-height:1.3;margin:0 0 clamp(.125rem,.5vw,.25rem);word-break:break-word}.student-info{gap:clamp(.0625rem,.3vw,.125rem)}.student-id,.team-name{color:#64748b;font-size:clamp(.65rem,1.4vw,.7rem);font-weight:500;line-height:1.3}.team-name{color:#475569}.invitation-status{align-self:flex-start;flex-shrink:0;margin-left:auto}.status-badge{border-radius:clamp(8px,2vw,10px);font-size:clamp(.6rem,1.3vw,.65rem);gap:clamp(.25rem,.8vw,.3rem);letter-spacing:.02em;padding:clamp(.25rem,1vw,.375rem) clamp(.375rem,1.2vw,.5rem);white-space:nowrap}.status-badge.pending{border:1px solid #f59e0b}.status-icon{font-size:clamp(.55rem,1.2vw,.6rem)}.invitation-meta{background:#f8fafc;border:1px solid #e2e8f0;border-radius:clamp(3px,.8vw,4px);margin-bottom:clamp(.625rem,1.5vw,.75rem);padding:clamp(.5rem,1.5vw,.625rem)}.sent-date{align-items:center;color:#475569;display:flex;font-size:clamp(.65rem,1.4vw,.7rem);font-weight:500;gap:clamp(.25rem,.8vw,.375rem);margin-bottom:clamp(.25rem,.8vw,.375rem)}.date-icon{color:#64748b;flex-shrink:0;font-size:clamp(.6rem,1.3vw,.65rem)}.project-preview{color:#1e293b;font-size:clamp(.65rem,1.4vw,.7rem);font-weight:500;line-height:1.4;word-break:break-word}.invitation-actions{align-items:center;display:flex;flex-wrap:wrap;gap:clamp(.375rem,1vw,.5rem);justify-content:flex-end}.cancel-invitation-btn{align-items:center;background:#fff;border:1px solid #fecaca;border-radius:clamp(3px,.8vw,4px);color:#dc2626;cursor:pointer;display:flex;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:clamp(.65rem,1.4vw,.7rem);font-weight:600;gap:clamp(.25rem,.8vw,.3rem);min-height:clamp(24px,6vw,28px);padding:clamp(.375rem,1.2vw,.5rem) clamp(.625rem,1.8vw,.875rem);transition:all .2s ease;white-space:nowrap}.cancel-invitation-btn:hover{background:#dc2626;border-color:#dc2626;color:#fff}.cancel-icon{flex-shrink:0;font-size:clamp(.6rem,1.3vw,.65rem)}.no-invitations{align-items:center;display:flex;justify-content:center;min-height:clamp(100px,20vh,120px);padding:clamp(1rem,3vw,1.5rem)}.empty-state{color:#64748b;max-width:200px}.empty-icon{color:#94a3b8;font-size:clamp(1.5rem,4vw,2rem);margin-bottom:clamp(.5rem,1.5vw,.75rem);opacity:.4}.empty-state h4{color:#475569;font-size:clamp(.8rem,2vw,.9rem);font-weight:600;line-height:1.3;margin:0 0 clamp(.25rem,1vw,.375rem)}.empty-state p{color:#64748b;font-size:clamp(.7rem,1.6vw,.75rem);line-height:1.4;margin:0}.modal-footer-section{background:#f8fafc;border-top:1px solid #e2e8f0;padding:clamp(.75rem,2vw,1rem) clamp(1rem,3vw,1.5rem)}.invitation-legend h5{align-items:center;color:#1e293b;display:flex;font-size:clamp(.75rem,1.6vw,.8rem);font-weight:600;gap:clamp(.25rem,.8vw,.375rem);line-height:1.3;margin:0 0 clamp(.375rem,1vw,.5rem)}.legend-items{flex-direction:column;gap:clamp(.25rem,.8vw,.375rem)}.legend-item{color:#475569;font-size:clamp(.65rem,1.4vw,.7rem);font-weight:500;gap:clamp(.375rem,1vw,.5rem);line-height:1.3}.legend-icon{flex-shrink:0;font-size:clamp(.7rem,1.5vw,.75rem);width:clamp(12px,3vw,14px)}.legend-icon.cancelled{color:#dc2626}@media (min-width:2560px){.sent-invitations-modal{max-width:500px}}@media (max-width:2559px) and (min-width:2048px){.sent-invitations-modal{max-width:480px}}@media (max-width:2047px) and (min-width:1600px){.sent-invitations-modal{max-width:460px}}@media (max-width:1599px) and (min-width:1440px){.sent-invitations-modal{max-width:450px}}@media (max-width:1439px) and (min-width:1200px){.sent-invitations-modal{max-width:430px}}@media (max-width:1199px) and (min-width:1024px){.sent-invitations-modal{max-width:400px}}@media (max-width:1023px) and (min-width:992px){.sent-invitations-modal{max-width:85vw}}@media (max-width:991px) and (min-width:768px){.sent-invitations-modal{max-height:80vh;max-width:88vw}.modal-header-section{align-items:flex-start;flex-direction:column;gap:.5rem}.header-actions{position:absolute;right:1rem;top:.875rem}.header-content{margin-right:3rem}.invitation-header{align-items:center;flex-direction:row}}@media (max-width:767px) and (min-width:600px){.sent-invitations-modal{max-height:85vh;max-width:92vw}.modal-header-section{align-items:flex-start;flex-direction:column;gap:.5rem;padding:.875rem 1rem}.header-actions{position:absolute;right:1rem;top:.875rem}.header-content{margin-right:2.75rem}.invitation-header{align-items:flex-start;flex-direction:column;gap:.5rem}.invitation-status{align-self:flex-start;margin-left:0}.cancel-invitation-btn{justify-content:center;width:100%}}@media (max-width:599px) and (min-width:480px){.sent-invitations-overlay{padding:.5rem}.sent-invitations-modal{max-height:88vh;max-width:95vw}.modal-header-section{padding:.75rem .875rem}.header-actions{gap:3px;right:.875rem;top:.75rem}.refresh-sent-requests-btn{font-size:.65rem;padding:3px 5px}.modal-close-btn{font-size:.75rem;height:22px;width:22px}.header-content{margin-right:2.5rem}}@media (max-width:479px) and (min-width:414px){.sent-invitations-overlay{padding:.375rem}.modal-header-section{padding:.625rem .75rem}.header-actions{gap:2px;right:.75rem;top:.625rem}.refresh-sent-requests-btn{font-size:.6rem;height:20px;padding:0;width:20px}.refresh-sent-requests-btn span{display:none}.modal-close-btn{font-size:.7rem;height:20px;width:20px}.header-content{margin-right:2.25rem}.student-avatar{font-size:.6rem;height:24px;width:24px}}@media (max-width:413px) and (min-width:375px){.modal-header-section{padding:.625rem .75rem}.modal-title{font-size:.875rem}.invitation-summary{font-size:.7rem}.student-avatar{font-size:.55rem;height:22px;width:22px}.status-badge{font-size:.55rem;padding:.1875rem .3125rem}.cancel-invitation-btn{font-size:.6rem;min-height:22px;padding:.3125rem .5rem}}@media (max-width:374px) and (min-width:320px){.modal-header-section{padding:.5rem .625rem}.header-actions{right:.625rem;top:.5rem}.modal-close-btn,.refresh-sent-requests-btn{font-size:.55rem;height:18px;width:18px}.header-content{margin-right:2rem}.modal-title{font-size:.8rem}.student-avatar{font-size:.5rem;height:20px;width:20px}.student-name{font-size:.7rem}.cancel-invitation-btn{font-size:.55rem;min-height:20px;padding:.25rem .4375rem}}@media (max-width:319px){.sent-invitations-overlay{padding:.25rem}.modal-header-section{padding:.4375rem .5rem}.header-actions{right:.5rem;top:.4375rem}.modal-title{font-size:.75rem}.invitation-summary{font-size:.625rem}.student-avatar{font-size:.45rem;height:18px;width:18px}.cancel-invitation-btn{font-size:.5rem;min-height:18px;padding:.1875rem .375rem}}@media (max-width:279px){.sent-invitations-modal{border-radius:4px}.modal-title{font-size:.7rem}.student-avatar{font-size:.4rem;height:16px;width:16px}.cancel-invitation-btn{font-size:.45rem;min-height:16px}}.cancel-invitation-btn:focus-visible,.modal-close-btn:focus-visible,.refresh-sent-requests-btn:focus-visible{outline:2px solid #475569;outline-offset:1px}@media (prefers-contrast:high){.invitation-item,.sent-invitations-modal,.status-badge.pending{border-width:2px}}@media (prefers-reduced-motion:reduce){.cancel-invitation-btn,.invitation-item,.sent-invitations-modal{animation:none;transition:none}.invitation-item:hover{transform:none}}@media print{.sent-invitations-overlay{-webkit-backdrop-filter:none;backdrop-filter:none;background:none;position:static}.sent-invitations-modal{border:1px solid #000;box-shadow:none;max-height:none}.cancel-invitation-btn,.modal-close-btn,.refresh-sent-requests-btn{display:none}}@media (hover:none) and (pointer:coarse){.cancel-invitation-btn,.modal-close-btn,.refresh-sent-requests-btn{min-height:44px;min-width:44px}.invitation-item{padding:1rem}}@media (orientation:landscape) and (max-height:500px){.sent-invitations-modal{max-height:95vh}.modal-body-section{padding:.5rem 1rem}}@container (max-width: 400px){.invitation-header{align-items:flex-start;flex-direction:column}.cancel-invitation-btn{width:100%}}.cancel-invitation-btn:focus-visible,.modal-close-btn:focus-visible,.refresh-sent-requests-btn:focus-visible,.team-invitations-btn:focus-visible{outline:2px solid #3182ce;outline-offset:2px}.modal-body-section{scrollbar-color:#cbd5e1 #f7fafc;scrollbar-width:thin}.modal-body-section::-webkit-scrollbar{width:6px}.modal-body-section::-webkit-scrollbar-track{background:#f7fafc}.modal-body-section::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}.modal-body-section::-webkit-scrollbar-thumb:hover{background:#a0aec0}.join-button.loading{cursor:not-allowed}.support-container{margin:0 auto;max-width:1200px;padding:2rem}.support-header{flex-wrap:wrap;gap:1rem;justify-content:space-between}.success-banner,.support-header{align-items:center;display:flex;margin-bottom:2rem}.success-banner{background:#d4edda;border-radius:8px;color:#155724;gap:.5rem;padding:1rem}.tickets-section h3{color:var(--text-color);margin-bottom:1rem}.no-tickets{color:#718096;color:var(--text-muted);padding:3rem}.no-tickets-icon{font-size:4rem;margin-bottom:1rem;opacity:.5}.tickets-list{grid-gap:1rem;gap:1rem}.ticket-card{border:1px solid #e1e5e9;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:1.5rem}.ticket-header{flex-wrap:wrap;gap:1rem;margin-bottom:1rem}.ticket-badges{flex-wrap:wrap;gap:.5rem}.category-badge,.priority-badge,.status-badge{border-radius:20px;font-size:.8rem;font-weight:500;padding:.25rem .75rem}.status-badge.open{background:#ffc107;color:#212529}.status-badge.in-progress{background:#17a2b8;color:#fff}.status-badge.resolved{background:#28a745;color:#fff}.status-badge.closed{background:#6c757d;color:#fff}.priority-badge.low{background:#e9ecef;color:#495057}.priority-badge.medium{background:#fff3cd;color:#856404}.priority-badge.high{background:#f8d7da;color:#721c24}.priority-badge.critical{background:#d1ecf1;color:#0c5460}.category-badge{background:#e9ecef;color:#495057}.admin-response{background:#f8f9fa;border-left:4px solid #2d3748;border-left:4px solid var(--primary-color);border-radius:6px;margin-top:1rem;padding:1rem}.ticket-footer{border-top:1px solid #e1e5e9;color:#718096;color:var(--text-muted);display:flex;flex-wrap:wrap;font-size:.9rem;justify-content:space-between;margin-top:1rem;padding-top:1rem}.support-modal{border-radius:8px}.support-form{padding:0 2rem 2rem}.support-form .form-group{margin-bottom:1.5rem}.support-form label{color:var(--text-color);margin-bottom:.5rem}.support-form input,.support-form select,.support-form textarea{border:1px solid #ddd;font-size:1rem;padding:.75rem}.form-actions{border-top:1px solid #e1e5e9;gap:1rem;padding-top:1rem}.tickets-stats{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:2rem}.tickets-stats .stat-card{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:1.5rem;text-align:center}.ticket-modal{max-width:800px;width:90%}.ticket-details{padding:0 2rem 2rem}.ticket-info .info-row{align-items:center;display:flex;margin-bottom:.75rem}.ticket-info label{font-weight:600;margin-right:1rem;min-width:100px}.admin-response-section,.ticket-description{margin:1.5rem 0}.status-actions{border-top:1px solid #e1e5e9;margin-top:2rem;padding-top:1rem}.status-buttons{display:flex;flex-wrap:wrap;gap:.5rem}.status-btn{border:none;border-radius:6px;cursor:pointer;font-weight:500;padding:.5rem 1rem}.status-btn.in-progress{background:#17a2b8;color:#fff}.status-btn.resolved{background:#28a745;color:#fff}.status-btn.closed{background:#6c757d;color:#fff}@media (max-width:768px){.support-header{align-items:stretch}.support-header,.ticket-footer,.ticket-header{flex-direction:column}.ticket-footer{gap:.5rem}.form-actions,.status-buttons{flex-direction:column}}.remove-member-modal-overlay{align-items:center;background:#0009;bottom:0;display:flex;justify-content:center;left:0;padding:1rem;position:fixed;right:0;top:0;z-index:1000}.remove-member-modal{animation:modalSlideIn .3s ease-out;background:#fff;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-height:90vh;max-width:450px;overflow-y:auto;width:100%}.remove-member-modal .modal-header{border-bottom:1px solid #e2e8f0;padding:1.5rem 1.5rem 1rem;text-align:center}.remove-member-modal .warning-icon{align-items:center;background:#fed7d7;border-radius:50%;color:#e53e3e;display:flex;font-size:1.5rem;height:60px;justify-content:center;margin:0 auto 1rem;width:60px}.remove-member-modal .modal-header h3{color:#1a202c;font-size:1.25rem;font-weight:600;margin:0}.remove-member-modal .modal-body{padding:1.5rem}.member-info-display{align-items:center;background:#f7fafc;border:1px solid #e2e8f0;border-radius:8px;display:flex;gap:1rem;margin-bottom:1.5rem;padding:1rem}.member-avatar-display{align-items:center;background:#4299e1;border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:1.25rem;font-weight:600;height:50px;justify-content:center;width:50px}.member-details-display h4{color:#1a202c;font-size:1.1rem;font-weight:600;margin:0 0 .25rem}.member-details-display p{color:#718096;font-size:.875rem;margin:0}.warning-message{background:#fff5f5;border:1px solid #fed7d7;border-radius:8px;display:flex;gap:.75rem;margin-bottom:1rem;padding:1rem}.warning-message .info-icon{color:#e53e3e;flex-shrink:0;font-size:1.125rem;margin-top:.125rem}.message-content p{color:#1a202c;font-size:.875rem;line-height:1.5;margin:0 0 .5rem}.message-content p:last-child{margin-bottom:0}.removal-consequences{margin-top:1rem}.removal-consequences ul{list-style:none;margin:0;padding-left:1rem}.removal-consequences li{color:#4a5568;font-size:.875rem;line-height:1.4;margin-bottom:.5rem}.removal-consequences li:last-child{margin-bottom:0}.remove-member-modal .modal-actions{border-top:1px solid #e2e8f0;display:flex;gap:.75rem;padding:1rem 1.5rem 1.5rem}.cancel-remove-btn{align-items:center;background:#fff;border:1px solid #cbd5e0;border-radius:6px;color:#4a5568;cursor:pointer;display:flex;flex:1 1;font-weight:500;gap:.5rem;justify-content:center;padding:.75rem 1rem;transition:all .2s}.cancel-remove-btn:hover:not(:disabled){background:#f7fafc;border-color:#a0aec0}.cancel-remove-btn:disabled{cursor:not-allowed;opacity:.6}.confirm-remove-btn{align-items:center;background:#e53e3e;border:1px solid #e53e3e;border-radius:6px;color:#fff;cursor:pointer;display:flex;flex:1 1;font-weight:500;gap:.5rem;justify-content:center;padding:.75rem 1rem;transition:all .2s}.confirm-remove-btn:hover:not(:disabled){background:#c53030;border-color:#c53030}.confirm-remove-btn:disabled{cursor:not-allowed;opacity:.6}@media (max-width:640px){.remove-member-modal{margin:.5rem;max-width:95%}.remove-member-modal .modal-header{padding:1rem 1rem .75rem}.remove-member-modal .warning-icon{font-size:1.25rem;height:50px;margin-bottom:.75rem;width:50px}.remove-member-modal .modal-header h3{font-size:1.125rem}.remove-member-modal .modal-body{padding:1rem}.member-info-display{gap:.75rem;padding:.75rem}.member-avatar-display{font-size:1rem;height:40px;width:40px}.warning-message{gap:.5rem;padding:.75rem}.remove-member-modal .modal-actions{flex-direction:column;padding:.75rem 1rem 1rem}.cancel-remove-btn,.confirm-remove-btn{padding:.875rem 1rem}}.skills-display{padding:1rem 0}.skills-list{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.skill-tag{border-radius:16px;display:inline-block;font-size:.875rem;padding:.25rem .75rem}.no-skills{color:#666;font-style:italic;margin-bottom:1rem}.edit-skills-btn{align-items:center;background-color:#1976d2;border:none;border-radius:4px;color:#fff;cursor:pointer;display:flex;font-size:.875rem;gap:.5rem;padding:.5rem 1rem;transition:background-color .2s}.edit-skills-btn:hover{background-color:#1565c0}.skills-edit-form{padding:1rem 0}.skills-input-section{margin-bottom:1rem}.skills-input-wrapper{display:flex;gap:.5rem;margin-bottom:.5rem}.skills-input-wrapper input{border:1px solid #ddd;border-radius:4px;flex:1 1;font-size:.875rem;padding:.5rem}.add-skill-btn{align-items:center;background-color:#4caf50;border:none;border-radius:4px;color:#fff;cursor:pointer;display:flex;font-size:.875rem;gap:.25rem;min-width:70px;padding:.5rem 1rem}.add-skill-btn:disabled{background-color:#ccc;cursor:not-allowed}.editing-skills-list{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem;min-height:2rem}.editing-skill-item{align-items:center;background-color:#f5f5f5;border:1px solid #ddd;border-radius:16px;display:flex;gap:.5rem;padding:.25rem .5rem}.skill-text{font-size:.875rem}.remove-skill-btn{align-items:center;background-color:#f44336;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:.75rem;height:18px;justify-content:center;width:18px}.skills-form-actions{display:flex;gap:.5rem;justify-content:flex-end}.cancel-skills-btn{background-color:#666}.cancel-skills-btn,.save-skills-btn{border:none;border-radius:4px;color:#fff;cursor:pointer;padding:.5rem 1rem}.save-skills-btn{align-items:center;background-color:#4caf50;display:flex;gap:.5rem}.save-skills-btn:disabled{background-color:#ccc;cursor:not-allowed}.student-skills{margin:.75rem 0}.skills-label{color:#333;font-size:.875rem;font-weight:500;gap:.5rem;margin-bottom:.5rem}.skills-icon{color:#1976d2}.skills-tags{gap:.25rem}.skill-tag{background-color:#e3f2fd;border:1px solid #bbdefb;color:#1565c0;font-size:.75rem;padding:.125rem .5rem}.no-skills-text{color:#999;font-size:.75rem}.more-skills{color:#666;font-size:.75rem;font-style:italic}.join-button-container{display:flex;flex-direction:column;gap:.5rem}.rejection-status-display{background-color:#fef2f2;border:1px solid #fecaca;border-radius:.375rem;padding:.5rem}.rejection-count{color:#dc2626;font-size:.75rem;font-weight:600;gap:.25rem}.warning-icon{color:#f59e0b}.warning-text{color:#dc2626;font-weight:700}.refresh-rejection-btn{align-items:center;background-color:#f3f4f6;border:1px solid #d1d5db;border-radius:.375rem;color:#374151;cursor:pointer;display:flex;font-size:.875rem;gap:.5rem;padding:.5rem 1rem;transition:all .2s}.refresh-rejection-btn:hover{background-color:#e5e7eb;border-color:#9ca3af}.join-button{align-items:center;background-color:#3b82f6;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-weight:600;gap:8px;padding:12px 20px;transition:all .2s ease}.join-button:hover:not(:disabled){background-color:#2563eb;transform:translateY(-1px)}.join-button:disabled{cursor:not-allowed;opacity:.6;transform:none}.join-button.loading{background-color:#6b7280}.request-sent-button{background-color:#10b981;border-radius:6px;padding:12px 20px}.blocked-btn{align-items:center;background-color:#ef4444;border:none;border-radius:6px;color:#fff;cursor:not-allowed;display:flex;font-weight:600;gap:8px;opacity:.8;padding:12px 20px}.rejection-status-display{margin-top:8px;text-align:center}.rejection-count{align-items:center;color:#f59e0b;display:flex;font-size:12px;gap:4px;justify-content:center}.warning-text{color:#ef4444;font-weight:600}.team-member-recruitment-section{border-radius:12px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;margin-bottom:24px;padding:24px}.team-member-recruitment-section h3{align-items:center;color:#1f2937;display:flex;font-size:20px;font-weight:600;gap:8px;margin-bottom:8px}.team-member-recruitment-section p{color:#6b7280;font-size:14px;margin-bottom:20px}.team-requests-actions{gap:12px;margin-bottom:20px}.view-team-requests-btn{background:linear-gradient(135deg,#4f46e5,#7c3aed);border-radius:8px;box-shadow:0 2px 4px #4f46e54d;font-weight:600;gap:8px;padding:12px 20px;transition:all .3s ease}.view-team-requests-btn:hover{background:linear-gradient(135deg,#4338ca,#6d28d9);box-shadow:0 4px 12px #4f46e566;transform:translateY(-2px)}.search-controls{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;margin-bottom:20px;padding:20px}.search-input-wrapper{max-width:500px;width:100%}.search-input-wrapper .search-icon{color:#9ca3af;font-size:16px;left:16px;position:absolute;top:50%;transform:translateY(-50%);z-index:10}.search-input-wrapper input{background:#fff;border:2px solid #e5e7eb;border-radius:12px;box-shadow:0 1px 3px #0000001a;font-size:15px;padding:14px 16px 14px 48px;transition:all .3s ease;width:100%}.search-input-wrapper input:focus{border-color:#4f46e5;box-shadow:0 0 0 3px #4f46e51a,0 1px 3px #0000001a;transform:translateY(-1px)}.search-input-wrapper input::placeholder{color:#9ca3af;font-weight:400}.available-students-for-team{margin-top:24px}.available-students-for-team h4{color:#1f2937;font-size:18px;font-weight:600;gap:8px;margin-bottom:16px}.students-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));margin-top:20px}.student-card{background:#fff;border:2px solid #f1f5f9;border-radius:12px;overflow:hidden;padding:20px;position:relative;transition:all .3s ease}.student-card:before{background:linear-gradient(90deg,#4f46e5,#7c3aed,#ec4899);content:"";height:4px;left:0;position:absolute;right:0;top:0;transform:scaleX(0);transition:transform .3s ease}.student-card:hover{border-color:#4f46e5;box-shadow:0 8px 25px #4f46e526;transform:translateY(-4px)}.student-card:hover:before{transform:scaleX(1)}.student-header{align-items:center;display:flex;gap:16px;margin-bottom:16px}.avatar-wrapper{position:relative}.student-avatar,.student-avatar-img{border-radius:50%;height:60px;object-fit:cover;width:60px}.student-avatar{font-size:20px}.student-info h5{color:#1f2937;font-size:16px;font-weight:600;margin:0 0 4px}.student-id{color:#6b7280}.student-id,.student-major{font-size:13px;font-weight:500}.student-major{color:#4f46e5;margin-top:2px}.student-stats{display:flex;gap:16px;margin-bottom:16px}.stat-item{background:#f8fafc;border-radius:8px;color:#374151;font-size:13px;gap:6px;padding:6px 12px}.stat-icon{color:#6b7280;font-size:14px}.student-skills{margin-bottom:20px}.skills-label{align-items:center;color:#374151;display:flex;font-size:14px;font-weight:600;gap:6px;margin-bottom:8px}.skills-icon{color:#6b7280}.skills-tags{gap:6px}.skill-tag{background:linear-gradient(135deg,#e0e7ff,#c7d2fe);border:1px solid #c7d2fe;border-radius:12px;color:#4338ca;font-size:12px;font-weight:500;padding:4px 10px}.skill-tag.more{background:#f3f4f6;border-color:#d1d5db;color:#6b7280}.no-skills-text{color:#9ca3af;font-size:12px}.student-actions{margin-top:20px}.send-team-request-btn{background:linear-gradient(135deg,#059669,#047857);border-radius:8px;box-shadow:0 2px 4px #0596694d;font-size:14px;font-weight:600;gap:8px;justify-content:center;padding:12px 16px;transition:all .3s ease;width:100%}.send-team-request-btn:hover{background:linear-gradient(135deg,#047857,#065f46);box-shadow:0 4px 12px #05966966;transform:translateY(-2px)}.send-team-request-btn:disabled{background:linear-gradient(135deg,#9ca3af,#6b7280);box-shadow:none}.request-sent-button{align-items:center;background:linear-gradient(135deg,#10b981,#059669);border:none;border-radius:8px;color:#fff;cursor:not-allowed;display:flex;font-size:14px;font-weight:600;gap:8px;justify-content:center;opacity:.8;padding:12px 16px;width:100%}.no-students{background:#f9fafb;border:2px dashed #d1d5db;border-radius:12px;padding:40px 20px;text-align:center}.no-students-icon{color:#d1d5db;font-size:48px;margin-bottom:16px}.no-students h3{color:#374151;margin-bottom:8px}.no-students p{color:#6b7280;margin:0}@media (max-width:768px){.students-grid{gap:16px;grid-template-columns:1fr}.search-controls{padding:16px}.search-input-wrapper input{padding:12px 16px 12px 44px}.student-card{padding:16px}.student-header{gap:12px}.avatar-wrapper .student-avatar,.avatar-wrapper .student-avatar-img{height:50px;width:50px}.team-requests-actions{flex-direction:column;gap:8px}}@media (max-width:480px){.team-member-recruitment-section{margin-bottom:16px;padding:16px}.search-input-wrapper input{font-size:16px}.student-stats{flex-direction:column;gap:8px}.skills-tags{gap:4px}.skill-tag{font-size:11px;padding:3px 8px}}.send-team-request-btn:focus,.view-team-requests-btn:focus{outline:2px solid #4f46e5;outline-offset:2px}.search-input-wrapper input:focus{outline:none}@media (hover:hover){.stat-item:hover{background:#e2e8f0;transform:translateY(-1px)}.skill-tag:hover{box-shadow:0 2px 4px #4f46e533;transform:translateY(-1px)}}.team-member-recruitment-section{background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 1px 3px #0000001a;margin-bottom:20px;padding:20px}.team-requests-actions{display:flex;gap:10px;margin-bottom:16px}.view-team-requests-btn{align-items:center;background:#4f46e5;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:6px;padding:10px 16px;transition:all .2s ease}.view-team-requests-btn:hover{background:#4338ca;transform:translateY(-1px)}.available-students-for-team h4{align-items:center;color:#374151;display:flex;font-size:16px;gap:6px;margin-bottom:12px}.send-team-request-btn{align-items:center;background:#059669;border:none;border-radius:4px;color:#fff;cursor:pointer;display:flex;font-size:13px;font-weight:500;gap:4px;padding:6px 12px;transition:all .2s ease}.send-team-request-btn:hover{background:#047857;transform:translateY(-1px)}.send-team-request-btn:disabled{background:#9ca3af;cursor:not-allowed;transform:none}.team-requests-overlay{align-items:center;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0009;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.team-requests-modal{animation:modalSlideIn .3s ease-out;background:#fff;border-radius:10px;box-shadow:0 10px 25px #00000026;display:flex;flex-direction:column;max-height:70vh;max-width:600px;overflow:hidden;width:100%}.team-requests-modal .modal-header{align-items:center;background:#f8fafc;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:16px 20px}.team-requests-modal .modal-header h3{color:#1f2937;font-size:18px;font-weight:600;margin:0}.modal-close-btn{background:none;border:none;border-radius:4px;color:#6b7280;cursor:pointer;font-size:18px;padding:4px;transition:all .2s}.modal-close-btn:hover{background:#f3f4f6;color:#374151}.team-requests-modal .modal-body{flex:1 1;overflow-y:auto;padding:16px 20px}.request-item{background:#f9fafb;border-left:3px solid #4f46e5;border-radius:6px;margin-bottom:12px;padding:12px;transition:all .2s ease}.request-item:hover{background:#f3f4f6;transform:translateX(2px)}.request-header{gap:10px;margin-bottom:8px}.student-avatar{align-items:center;background:linear-gradient(135deg,#4f46e5,#7c3aed);border-radius:50%;color:#fff;display:flex;font-size:13px;font-weight:600;height:32px;justify-content:center;width:32px}.request-details h5{color:#1f2937;font-size:14px;font-weight:600;margin:0 0 2px}.program,.student-id{color:#6b7280;display:block;font-size:11px;line-height:1.3}.status-badge{font-size:11px;gap:3px;margin-left:auto;padding:3px 6px}.status-badge.awaiting_leader{background:#dbeafe;color:#1e40af}.request-meta{color:#6b7280;display:flex;flex-wrap:wrap;font-size:12px;gap:12px;margin-bottom:8px}.request-meta .icon{margin-right:3px}.leader-approval-section{background:#eff6ff;border:1px solid #93c5fd;border-radius:4px;margin-top:8px;padding:8px}.leader-approval-section h6{align-items:center;color:#1e40af;display:flex;font-size:12px;font-weight:600;gap:4px;margin:0 0 6px}.approval-actions{display:flex;gap:6px}.approve-btn,.reject-btn{align-items:center;border:none;border-radius:3px;cursor:pointer;display:flex;font-size:12px;font-weight:500;gap:3px;padding:4px 8px;transition:all .2s}.approve-btn{background:#059669;color:#fff}.approve-btn:hover{background:#047857}.reject-btn{background:#dc2626;color:#fff}.reject-btn:hover{background:#b91c1c}.requests-legend{border-top:1px solid #e5e7eb}.requests-legend h5{color:#374151;font-size:13px;font-weight:600;margin:0 0 6px}.legend-items{display:flex;flex-wrap:wrap;margin-top:6px}.legend-item{align-items:center;color:#6b7280;display:flex;font-size:12px;gap:4px}.legend-icon{font-size:10px}.legend-icon.pending{color:#f59e0b}.legend-icon.awaiting{color:#3b82f6}.legend-icon.accepted{color:#059669}.legend-icon.rejected{color:#dc2626}.no-requests{color:#6b7280;padding:24px}.no-requests-icon{color:#d1d5db;font-size:32px;margin-bottom:8px}@media (max-width:768px){.team-requests-overlay{padding:16px}.team-requests-modal{border-radius:8px;max-height:85vh;max-width:100%}.team-requests-modal .modal-header{padding:14px 16px}.team-requests-modal .modal-header h3{font-size:16px}.team-requests-modal .modal-body{padding:14px 16px}.request-header{align-items:flex-start;flex-direction:column;gap:8px}.status-badge{align-self:flex-start;margin-left:0}.approval-actions{flex-direction:column;gap:4px}.legend-items{flex-direction:column;gap:6px}.request-meta{flex-direction:column;gap:4px}}@media (max-width:480px){.team-requests-overlay{padding:12px}.team-requests-modal{border-radius:6px;max-height:90vh}.team-requests-modal .modal-body,.team-requests-modal .modal-header{padding:12px 14px}.request-item{margin-bottom:10px;padding:10px}.student-avatar{font-size:12px;height:28px;width:28px}.view-team-requests-btn{font-size:13px;padding:8px 12px}}.approve-btn:disabled,.reject-btn:disabled{cursor:not-allowed;opacity:.6}.spinning-student{animation:spin 1s linear infinite}.no-skills-text{background-color:#f9fafb;border:1px dashed #d1d5db;border-radius:4px;color:#6b7280;font-size:.875rem;padding:.25rem .5rem}.supervision-status-section{background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:.5rem;margin-top:2rem;padding:1.5rem}.supervision-status-section h4{align-items:center;color:#374151;display:flex;gap:.5rem;margin-bottom:1rem}.current-supervisor{margin-bottom:1.5rem}.supervisor-card{background-color:#fff;border:1px solid #d1d5db;border-radius:.5rem;padding:1rem}.supervisor-card.accepted{background-color:#f0fdf4;border-color:#10b981}.supervisor-header{align-items:center;display:flex;gap:.5rem;margin-bottom:.75rem}.status-icon.accepted{color:#10b981}.supervisor-info h6{color:#111827;font-size:1.1rem;margin:0}.supervision-requests{margin-top:1.5rem}.supervision-request-card{background-color:#fff;border:1px solid #d1d5db;border-radius:.5rem;margin-bottom:1rem;padding:1rem}.supervision-request-card.pending{background-color:#fffbeb;border-left:4px solid #f59e0b}.supervision-request-card.accepted{background-color:#f0fdf4;border-left:4px solid #10b981}.supervision-request-card.rejected{background-color:#fef2f2;border-left:4px solid #ef4444}.request-header{align-items:flex-start;margin-bottom:.75rem}.faculty-info h6{color:#111827;margin:0 0 .25rem}.faculty-info p{color:#6b7280;font-size:.875rem;margin:.25rem 0}.faculty-info p,.status-badge{align-items:center;display:flex;gap:.25rem}.status-badge{border-radius:9999px;font-size:.75rem}.status-badge.pending{background-color:#fef3c7}.status-badge.accepted{background-color:#d1fae5;color:#065f46}.status-badge.rejected{background-color:#fee2e2}.request-details p{font-size:.875rem;margin:.25rem 0}.no-supervision{color:#6b7280;padding:2rem;text-align:center}.no-supervision .empty-icon{font-size:2rem;margin-bottom:1rem;opacity:.5}.fpage-btn.disabled{background-color:#e5e7eb;color:#9ca3af;cursor:not-allowed}.fpage-btn.sent{background-color:#d1fae5;color:#065f46;cursor:default}.refresh-supervision-btn{align-items:center;background-color:#3b82f6;border:none;border-radius:.375rem;color:#fff;cursor:pointer;display:flex;font-size:.875rem;gap:.5rem;padding:.5rem 1rem;transition:background-color .2s}.refresh-supervision-btn:hover{background-color:#2563eb}.refresh-supervision-btn:disabled{background-color:#9ca3af;cursor:not-allowed}.supervision-modal-overlay{align-items:center;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.supervision-modal{background:#fff;border-radius:12px;box-shadow:0 10px 25px #0003;max-height:90vh;max-width:600px;overflow-y:auto;width:90%}.supervision-modal .modal-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:20px}.supervision-modal .modal-header h3{align-items:center;color:#1f2937;display:flex;gap:8px;margin:0}.supervision-modal .close-modal-btn{background:none;border:none;border-radius:4px;color:#6b7280;cursor:pointer;font-size:1.5rem;padding:4px}.supervision-modal .close-modal-btn:hover{background-color:#f3f4f6;color:#ef4444}.supervision-modal .modal-body{padding:20px}.faculty-info-summary{align-items:center;background-color:#f8fafc;border-radius:8px;display:flex;gap:15px;margin-bottom:20px;padding:15px}.faculty-avatar{height:60px;position:relative;width:60px}.faculty-avatar-img{border-radius:50%;height:100%;object-fit:cover;width:100%}.faculty-avatar-fallback{align-items:center;background-color:#3b82f6;border-radius:50%;color:#fff;display:flex;font-size:1.25rem;font-weight:600;height:100%;justify-content:center;width:100%}.faculty-details h4{color:#1f2937;margin:0 0 4px}.faculty-details p{color:#6b7280;font-size:.875rem;margin:2px 0}.team-info-summary{background-color:#f0fdf4;border-radius:8px;margin-bottom:20px;padding:15px}.team-info-summary h5{color:#065f46;margin:0 0 8px}.team-stats{color:#047857;display:flex;font-size:.875rem;gap:15px}.team-stats span{align-items:center;display:flex;gap:4px}.message-section{margin-bottom:20px}.message-section label{align-items:center;color:#374151;display:flex;font-weight:600;gap:8px;margin-bottom:8px}.message-section textarea{border:1px solid #d1d5db;border-radius:8px;font-family:inherit;font-size:.875rem;min-height:100px;padding:12px;resize:vertical;width:100%}.message-section textarea:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.character-count{color:#6b7280;display:block;font-size:.75rem;margin-top:4px;text-align:right}.message-preview{margin-bottom:20px}.message-preview h6{color:#374151;font-weight:600;margin:0 0 8px}.preview-box{background-color:#f8fafc;border:1px solid #e5e7eb;border-radius:6px;color:#4b5563;font-size:.875rem;font-style:italic;padding:12px}.supervision-modal .modal-footer{border-top:1px solid #e5e7eb;display:flex;gap:12px;justify-content:flex-end;padding:20px}.cancel-btn{align-items:center;background-color:#fff;border:1px solid #d1d5db;display:flex;gap:8px}.cancel-btn:hover{background-color:#f9fafb}.send-request-btn{align-items:center;background-color:#3b82f6;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-weight:500;gap:8px;padding:10px 20px}.send-request-btn:hover{background-color:#2563eb}.send-request-btn:disabled{background-color:#9ca3af;cursor:not-allowed}.supervision-history-overlay{align-items:center;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.supervision-history-modal{background:#fff;border-radius:12px;box-shadow:0 20px 40px #00000026;max-height:90vh;max-width:800px;overflow-y:auto;width:90%}.supervision-history-modal .modal-header{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-bottom:1px solid #e5e7eb;border-radius:12px 12px 0 0;color:#fff;display:flex;justify-content:space-between;padding:20px 24px}.supervision-history-modal .modal-header h3{align-items:center;display:flex;font-size:1.25rem;gap:10px;margin:0}.supervision-history-modal .modal-body{padding:24px}.supervision-history-modal .modal-footer{background-color:#f8fafc;border-radius:0 0 12px 12px;border-top:1px solid #e5e7eb;padding:20px 24px}.show-history-btn{align-items:center;background:linear-gradient(135deg,#3b82f6,#1e40af);border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:14px;gap:8px;padding:8px 16px;transition:all .2s}.show-history-btn:hover{box-shadow:0 4px 12px #3b82f666;transform:translateY(-1px)}.supervision-actions{align-items:center;display:flex;gap:12px}.current-supervisor-summary{background:linear-gradient(135deg,#10b981,#059669);border-radius:8px;color:#fff;margin-bottom:24px;padding:16px}.current-supervisor-summary .supervisor-card{align-items:center;background:#ffffff1a;border:1px solid #fff3;border-radius:6px;display:flex;gap:12px;padding:16px}.current-supervisor-summary .supervisor-card .status-icon{color:#a7f3d0;font-size:1.5rem}.requests-timeline{padding-left:20px;position:relative}.requests-timeline:before{background:linear-gradient(180deg,#e5e7eb,#d1d5db);bottom:0;content:"";left:15px;position:absolute;top:0;width:2px}.request-timeline-item{align-items:flex-start;display:flex;gap:16px;margin-bottom:24px;position:relative}.timeline-marker{align-items:center;background:#fff;border:3px solid #e5e7eb;border-radius:50%;display:flex;height:32px;justify-content:center;left:-25px;position:absolute;top:8px;width:32px;z-index:1}.request-timeline-item.pending .timeline-marker{background:#fef3c7;border-color:#f59e0b}.request-timeline-item.accepted .timeline-marker{background:#d1fae5;border-color:#10b981}.request-timeline-item.rejected .timeline-marker{background:#fee2e2;border-color:#ef4444}.timeline-marker .status-icon{font-size:14px}.timeline-marker .status-icon.pending{color:#d97706}.timeline-marker .status-icon.accepted{color:#059669}.timeline-marker .status-icon.rejected{color:#dc2626}.timeline-content{background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 1px 3px #0000001a;flex:1 1;padding:16px}.request-timeline-item.accepted .timeline-content{background:linear-gradient(135deg,#f0fdf4,#ecfdf5);border-color:#10b981}.request-timeline-item.rejected .timeline-content{background:linear-gradient(135deg,#fef2f2,#fee2e2);border-color:#ef4444}.request-timeline-item.pending .timeline-content{background:linear-gradient(135deg,#fffbeb,#fef3c7);border-color:#f59e0b}.request-header{margin-bottom:12px}.request-header h6{color:#1f2937;font-size:1.1rem;font-weight:600;margin:0}.request-details p{align-items:center;color:#4b5563;display:flex;font-size:14px;gap:8px;margin:6px 0}.request-message{border-top:1px solid #e5e7eb;margin-top:12px;padding-top:12px}.message-text{background:#00000005;border-radius:6px;color:#374151;font-style:italic;margin:8px 0 0!important;padding:12px}.history-summary{text-align:center}.summary-stats{gap:20px;justify-content:center}.stat-item{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:20px;font-size:14px;font-weight:500;gap:8px;padding:8px 16px}.stat-item .stat-icon{font-size:16px}.stat-item.accepted{background:#f0fdf4;border-color:#10b981;color:#059669}.stat-item.rejected{background:#fef2f2;border-color:#ef4444;color:#dc2626}.stat-item.pending{background:#fffbeb;border-color:#f59e0b;color:#d97706}.supervision-history-modal .no-requests{color:#6b7280;padding:40px 20px;text-align:center}.supervision-history-modal .no-requests .empty-icon{color:#d1d5db;font-size:3rem;margin-bottom:16px}.supervision-history-modal .no-requests h4{color:#374151;margin:16px 0 8px}@media (max-width:768px){.supervision-history-modal{margin:20px;max-height:85vh;width:95%}.supervision-actions{flex-direction:column;gap:8px}.show-history-btn{font-size:13px;padding:6px 12px}.summary-stats{align-items:center;flex-direction:column}.request-header{align-items:flex-start;flex-direction:column;gap:8px}}.view-members-btn{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:.875rem;font-weight:500;gap:.5rem;justify-content:center;margin-top:.5rem;padding:.6rem 1rem;transition:all .3s ease;width:100%}.view-members-btn:hover{box-shadow:0 4px 12px #667eea66;transform:translateY(-2px)}.team-members-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.team-members-modal{background:#fff;border-radius:12px;box-shadow:0 20px 40px #0000004d;max-height:90vh;max-width:800px;overflow-y:auto;width:90%}.team-members-modal .modal-header{align-items:flex-start;background:linear-gradient(135deg,#667eea,#764ba2);border-bottom:1px solid #e5e7eb;border-radius:12px 12px 0 0;color:#fff;display:flex;justify-content:space-between;padding:1.5rem}.modal-title-section h3{align-items:center;display:flex;font-size:1.5rem;gap:.75rem;margin:0 0 .5rem}.team-summary{display:flex;flex-wrap:wrap;gap:1rem}.member-count,.team-major{background:#fff3;border-radius:20px;font-size:.875rem;font-weight:500;padding:.25rem .75rem}.close-modal-btn{align-items:center;background:#fff3;border-radius:50%;color:#fff;display:flex;height:40px;justify-content:center;transition:all .3s ease;width:40px}.close-modal-btn:hover{background:#ffffff4d}.team-members-modal .modal-body{padding:1.5rem}.team-info-section h4{align-items:center;color:#374151;display:flex;gap:.5rem;margin:0 0 1rem}.team-details-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr}.team-details-grid .detail-item{display:flex;flex-direction:column;gap:.25rem}.team-details-grid .detail-item.full-width{grid-column:1/-1}.team-details-grid .label{color:#6b7280;font-size:.875rem;font-weight:600}.team-details-grid .value{color:#374151;font-weight:500}.members-details-section h4{align-items:center;color:#374151;display:flex;font-size:1.25rem;gap:.5rem;margin:0 0 1.5rem}.members-details-list{grid-gap:1.5rem;display:grid;gap:1.5rem}.member-detail-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:1.5rem;transition:all .3s ease}.member-detail-card:hover{border-color:#cbd5e1;box-shadow:0 4px 12px #0000001a}.member-header{gap:1rem}.member-detail-avatar,.member-detail-avatar-fallback{border-radius:50%;height:60px;object-fit:cover;width:60px}.member-detail-avatar-fallback{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;font-size:1.5rem;font-weight:600;justify-content:center}.member-basic-info h5{align-items:center;color:#1f2937;display:flex;gap:.5rem;margin:0 0 .25rem}.leader-crown{color:#f59e0b;font-size:1rem}.member-role{color:#6b7280;font-size:.875rem;font-weight:500}.member-details-info{grid-gap:.75rem;display:grid;gap:.75rem}.info-row{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr}.info-item{background:#fff;border:1px solid #e5e7eb;border-radius:6px;gap:.5rem;padding:.75rem}.info-icon{color:#667eea;flex-shrink:0;font-size:.875rem}.info-label{color:#6b7280;font-size:.875rem;font-weight:600;min-width:80px}.info-value{color:#374151;font-size:.875rem;font-weight:500;word-break:break-all}.modal-footer{background:#f9fafb;border-radius:0 0 12px 12px;border-top:1px solid #e5e7eb;padding:1.5rem}.modal-actions{display:flex;flex-wrap:wrap;gap:1rem;justify-content:flex-end}.close-btn,.join-from-modal-btn{align-items:center;border-radius:6px;cursor:pointer;display:flex;font-weight:600;gap:.5rem;padding:.75rem 1.5rem;transition:all .3s ease}.close-btn{background:#6b7280;border:none;color:#fff}.close-btn:hover{background:#4b5563}.join-from-modal-btn{background:#059669;border:none;color:#fff}.join-from-modal-btn:hover{background:#047857}@media (max-width:768px){.team-members-modal{max-height:95vh;width:95%}.info-row,.team-details-grid{grid-template-columns:1fr}.member-header{flex-direction:column;gap:.75rem;text-align:center}.modal-actions{justify-content:center}}.member-skills-section{border-top:1px solid #e2e8f0;border-top:1px solid var(--border-color);margin-top:1rem;padding-top:1rem}.skills-header{align-items:center;display:flex;font-weight:600;gap:.5rem;margin-bottom:.5rem}.skills-icon{color:#2d3748;color:var(--primary-color);font-size:.9rem}.skills-tags{display:flex;flex-wrap:wrap;gap:.5rem}.modal-skill-tag{background-color:var(--primary-color-light);border:1px solid #2d3748;border:1px solid var(--primary-color);border-radius:20px;color:#2d3748;color:var(--primary-color);font-size:.85rem;font-weight:500;padding:.25rem .75rem}.no-skills-text{color:#718096;color:var(--text-muted);font-size:.9rem;font-style:italic}.supervisor-info{align-items:flex-end;display:flex;flex-direction:column;gap:4px}.supervisor-badge{align-items:center;background:linear-gradient(135deg,#6366f1,#8b5cf6);border-radius:20px;display:flex;font-size:12px;font-weight:600;gap:6px;min-height:32px;padding:6px 12px;white-space:nowrap}.supervisor-icon{flex-shrink:0;font-size:14px}.supervisor-note{color:#6b7280;font-size:11px;font-style:italic;line-height:1.4;text-align:right}.supervised-team-notice{align-items:center;background-color:#fef3c7;border:1px solid #f59e0b;border-radius:6px;display:flex;margin-top:8px;min-height:44px;padding:8px 12px}.supervisor-restriction{align-items:center;color:#92400e;display:flex;flex-wrap:wrap;font-size:12px;gap:6px;line-height:1.4}.lock-icon{color:#f59e0b;flex-shrink:0}.supervised-leader-display{align-items:center;background-color:#e0f2fe;border:1px solid #0284c7;border-radius:6px;display:flex;margin-top:8px;min-height:44px;padding:8px 12px}.supervised-leader-label{color:#0c4a6e;font-size:12px;font-weight:500;line-height:1.4}.management-rules ul li{color:#4b5563;line-height:1.5;margin-bottom:8px}.management-rules ul li:first-child{color:#1f2937;font-weight:600}@media (max-width:480px){.supervisor-info{align-items:flex-start;gap:6px;width:100%}.supervisor-badge{border-radius:16px;font-size:11px;justify-content:center;max-width:100%;min-height:36px;padding:8px 12px}.supervisor-icon{font-size:12px}.supervisor-note{font-size:10px;margin-top:2px;text-align:left}.supervised-team-notice{align-items:flex-start;border-radius:8px;flex-direction:column;gap:8px;margin-top:12px;padding:12px}.supervisor-restriction{align-items:flex-start;font-size:11px;gap:8px}.supervised-leader-display{align-items:flex-start;border-radius:8px;flex-direction:column;gap:6px;margin-top:12px;padding:12px}.supervised-leader-label{font-size:11px;text-align:left}.management-rules ul{padding-left:16px}.management-rules ul li{font-size:14px;line-height:1.6;margin-bottom:10px}}@media (min-width:481px) and (max-width:768px){.supervisor-info{gap:5px}.supervisor-badge{font-size:11px;min-height:34px;padding:7px 12px}.supervisor-icon{font-size:13px}.supervisor-note{font-size:10px}.supervised-team-notice{flex-wrap:wrap;margin-top:10px;padding:10px 12px}.supervisor-restriction{font-size:11px;gap:6px}.supervised-leader-display{flex-wrap:wrap;margin-top:10px;padding:10px 12px}.supervised-leader-label{font-size:11px}.management-rules ul li{font-size:14px;margin-bottom:9px}}@media (min-width:769px) and (max-width:1024px){.supervisor-badge{font-size:12px;padding:6px 12px}.supervisor-note{font-size:11px}.supervised-leader-label,.supervisor-restriction{font-size:12px}.management-rules ul li{font-size:15px}}@media (min-width:1025px){.supervisor-info{align-items:flex-end}.supervisor-note{text-align:right}.supervisor-badge:hover{box-shadow:0 4px 12px #6366f14d;transform:translateY(-1px);transition:all .2s ease}.supervised-team-notice:hover{background-color:#fef3c7;border-color:#d97706;transition:all .2s ease}.supervised-leader-display:hover{background-color:#dbeafe;border-color:#0369a1;transition:all .2s ease}}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){.supervisor-badge{border:.5px solid #fff3}.supervisor-icon{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}}@media (prefers-color-scheme:dark){.supervisor-note{color:#9ca3af}.supervised-team-notice{background-color:#451a03;border-color:#92400e}.supervisor-restriction{color:#fbbf24}.supervised-leader-display{background-color:#0c4a6e;border-color:#0ea5e9}.supervised-leader-label{color:#7dd3fc}}@media (prefers-reduced-motion:reduce){.supervised-leader-display:hover,.supervised-team-notice:hover,.supervisor-badge:hover{transform:none;transition:none}}@media print{.supervisor-badge{background:#6366f1!important;color:#fff!important}.supervised-team-notice,.supervisor-badge{color-adjust:exact;-webkit-print-color-adjust:exact}.supervised-team-notice{background:#fef3c7!important;border:1px solid #f59e0b!important}.supervised-leader-display{color-adjust:exact;background:#e0f2fe!important;border:1px solid #0284c7!important;-webkit-print-color-adjust:exact}}@container (max-width: 300px){.supervisor-badge{font-size:10px;padding:6px 8px}.supervised-leader-label,.supervisor-restriction{font-size:10px}}.supervised-leader-display:focus,.supervised-team-notice:focus,.supervisor-badge:focus{outline:2px solid #3b82f6;outline-offset:2px}@media (max-width:768px) and (orientation:landscape){.supervised-leader-display,.supervised-team-notice{padding:8px 12px}.management-rules ul li{margin-bottom:6px}}.completion-celebration-overlay{align-items:center;animation:celebrationFadeIn .8s ease-out;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(135deg,#10b981f2,#3b82f6f2 50%,#a855f7f2);bottom:0;display:flex;justify-content:center;left:0;overflow:hidden;position:fixed;right:0;top:0;z-index:10000}.celebration-background{height:100%;left:0;overflow:hidden;pointer-events:none;position:absolute;top:0;width:100%}.confetti{animation:confettiFall linear infinite;background:gold;height:10px;position:absolute;transform-origin:center;width:10px}.confetti-0{background:#ff6b6b}.confetti-1{background:#4ecdc4}.confetti-2{background:#45b7d1}.confetti-3{background:#ffa07a}.confetti-4{background:#98d8c8}.confetti-5{background:#f7dc6f}.confetti-6{background:#bb8fce}.confetti-7{background:#85c1e9}@keyframes confettiFall{0%{opacity:1;transform:translateY(-100vh) rotate(0deg) translateX(0)}to{opacity:0;transform:translateY(100vh) rotate(2turn) translateX(0);transform:translateY(100vh) rotate(2turn) translateX(var(--random-x,0))}}.floating-success-icon{animation:floatUpAndFade 5s ease-out infinite;font-size:2rem;position:absolute}@keyframes floatUpAndFade{0%{opacity:0;transform:translateY(100vh) rotate(0deg) scale(0)}20%{opacity:1;transform:scale(1)}80%{opacity:1}to{opacity:0;transform:translateY(-20vh) rotate(1turn) scale(0)}}.completion-celebration-modal{animation:modalSlideUp .8s cubic-bezier(.34,1.56,.64,1);background:#fffffffa;border-radius:24px;box-shadow:0 25px 50px #0000004d,0 0 0 1px #fff3;max-height:90vh;max-width:800px;overflow-y:auto;padding:3rem;position:relative;text-align:center;width:90vw}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(100px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}.success-ring-container{height:100px;left:50%;position:absolute;top:-50px;transform:translateX(-50%);width:100px}.success-ring{animation:successRingPulse 2s ease-out infinite;border:3px solid #10b981;border-radius:50%;position:absolute}.success-ring-1{animation-delay:0s;height:60px;left:20px;top:20px;width:60px}.success-ring-2{animation-delay:.3s;height:80px;left:10px;top:10px;width:80px}.success-ring-3{animation-delay:.6s;height:100px;left:0;top:0;width:100px}@keyframes successRingPulse{0%{opacity:1;transform:scale(0)}to{opacity:0;transform:scale(1.5)}}.trophy-container{animation:trophyEntrance 1.2s cubic-bezier(.68,-.55,.265,1.55);display:inline-block;margin:2rem 0;position:relative}.trophy-icon{animation:trophyFloat 3s ease-in-out infinite;color:gold;font-size:4rem;position:relative;text-shadow:0 0 20px #ffd70080;z-index:2}.trophy-glow{animation:glowPulse 2s ease-in-out infinite alternate;background:radial-gradient(circle,#ffd70066 0,#0000 70%);border-radius:50%;height:120px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:120px}.trophy-sparkles{height:100%;left:0;position:absolute;top:0;width:100%}.sparkle{animation:sparkleRotate 4s linear infinite;font-size:1.2rem;position:absolute}.sparkle-0{animation-delay:0s;left:-10px;top:-10px}.sparkle-1{animation-delay:.5s;right:-10px;top:-10px}.sparkle-2{animation-delay:1s;bottom:-10px;left:-10px}.sparkle-3{animation-delay:1.5s;bottom:-10px;right:-10px}.sparkle-4{animation-delay:2s;left:-20px;top:50%}.sparkle-5{animation-delay:2.5s;right:-20px;top:50%}.sparkle-6{animation-delay:3s;left:50%;top:-20px}.sparkle-7{animation-delay:3.5s;bottom:-20px;left:50%}@keyframes trophyEntrance{0%{opacity:0;transform:scale(0) rotate(-180deg)}50%{transform:scale(1.2) rotate(-90deg)}to{opacity:1;transform:scale(1) rotate(0deg)}}@keyframes trophyFloat{0%,to{transform:translateY(0) rotate(0deg)}50%{transform:translateY(-10px) rotate(5deg)}}@keyframes glowPulse{0%{opacity:.4;transform:translate(-50%,-50%) scale(1)}to{opacity:.8;transform:translate(-50%,-50%) scale(1.2)}}@keyframes sparkleRotate{0%{opacity:0;transform:rotate(0deg) translateX(40px) rotate(0deg)}10%{opacity:1}90%{opacity:1}to{opacity:0;transform:rotate(1turn) translateX(40px) rotate(-1turn)}}.celebration-title{display:flex;flex-direction:column;font-size:2.5rem;font-weight:900;gap:.5rem;margin:1rem 0}.title-word{-webkit-text-fill-color:#0000;animation:titleWordSlide .8s cubic-bezier(.34,1.56,.64,1) forwards;background:linear-gradient(45deg,#10b981,#3b82f6,#8b5cf6);-webkit-background-clip:text;background-clip:text;display:inline-block;opacity:0;transform:translateX(-100px)}.title-word-1{animation-delay:.2s}.title-word-2{animation-delay:.4s}.title-word-3{animation-delay:.6s}@keyframes titleWordSlide{to{opacity:1;transform:translateX(0)}}.completed-badge-animated{align-items:center;animation:badgePulse 2s ease-in-out infinite;background:linear-gradient(135deg,#10b981,#059669);border-radius:50px;box-shadow:0 4px 15px #10b98166;color:#fff;display:inline-flex;font-weight:600;gap:.5rem;padding:.75rem 1.5rem}.check-icon{animation:checkBounce 1s ease-in-out infinite}@keyframes badgePulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes checkBounce{0%,to{transform:scale(1)}50%{transform:scale(1.2)}}.team-achievement-card{animation:cardSlideIn 1s ease-out .8s both;background:linear-gradient(135deg,#f8fafc,#e2e8f0);border:2px solid #e5e7eb;border-radius:16px;margin:2rem 0;padding:2rem}.achievement-header{align-items:center;display:flex;gap:1rem;justify-content:center;margin-bottom:2rem}.team-icon-container{position:relative}.team-icon{animation:teamIconSpin 3s linear infinite;color:#3b82f6;font-size:2rem}.icon-glow{animation:iconGlowPulse 2s ease-in-out infinite;background:radial-gradient(circle,#3b82f64d 0,#0000 70%);border-radius:50%;height:50px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:50px}@keyframes teamIconSpin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes iconGlowPulse{0%,to{opacity:.3;transform:translate(-50%,-50%) scale(1)}50%{opacity:.6;transform:translate(-50%,-50%) scale(1.5)}}.project-details-animated{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr;margin:2rem 0}.detail-item{animation:detailItemSlide .6s ease-out both;background:#fff;border:1px solid #e5e7eb;border-radius:12px;gap:1rem;padding:1rem;transition:transform .3s ease}.detail-item:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.detail-item-1{animation-delay:1s}.detail-item-2{animation-delay:1.2s}.detail-item-3{animation-delay:1.4s}.detail-item-4{animation-delay:1.6s}.detail-icon{animation:detailIconBounce 2s ease-in-out infinite;color:#10b981;font-size:1.5rem}.detail-content{display:flex;flex-direction:column;text-align:left}.detail-label{color:#6b7280;font-size:.8rem}.detail-value{color:#111827;font-size:1rem;font-weight:600}@keyframes detailItemSlide{0%{opacity:0;transform:translateX(-30px)}to{opacity:1;transform:translateX(0)}}@keyframes detailIconBounce{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.team-members-celebration{margin:2rem 0}.members-celebration-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin-top:1rem}.member-celebration-card{animation:memberCardFloat .8s ease-out both;background:#fff;border:2px solid #e5e7eb;border-radius:16px;overflow:hidden;padding:1.5rem;position:relative}.member-avatar-celebration{height:60px;margin:0 auto 1rem;position:relative;width:60px}.member-fallback-celebration,.member-pic-celebration{animation:avatarGlow 2s ease-in-out infinite;border:3px solid #10b981;border-radius:50%;height:100%;width:100%}.member-fallback-celebration{background:linear-gradient(135deg,#10b981,#059669);color:#fff;font-size:1.5rem;font-weight:700}.leader-crown,.member-fallback-celebration{align-items:center;display:flex;justify-content:center}.leader-crown{animation:crownFloat 2s ease-in-out infinite;background:gold;font-size:.8rem;height:24px;right:-8px;top:-8px;width:24px}.leader-crown,.member-glow{border-radius:50%;position:absolute}.member-glow{animation:memberGlowPulse 3s ease-in-out infinite;background:radial-gradient(circle,#10b98133 0,#0000 70%);height:80px;left:50%;top:50%;transform:translate(-50%,-50%);width:80px}@keyframes memberCardFloat{0%{opacity:0;transform:translateY(30px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes avatarGlow{0%,to{box-shadow:0 0 0 #10b98166}50%{box-shadow:0 0 20px #10b98199}}@keyframes crownFloat{0%,to{transform:rotate(-10deg) translateY(0)}50%{transform:rotate(10deg) translateY(-2px)}}@keyframes memberGlowPulse{0%,to{opacity:.2;transform:translate(-50%,-50%) scale(1)}50%{opacity:.4;transform:translate(-50%,-50%) scale(1.3)}}.achievement-stats{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(3,1fr);margin:2rem 0}.stat-celebration{animation:statSlideUp .8s ease-out both;background:linear-gradient(135deg,#3b82f6,#1d4ed8);border-radius:16px;color:#fff;padding:1.5rem;text-align:center}.stat-1{animation-delay:1.8s}.stat-2{animation-delay:2s}.stat-3{animation-delay:2.2s}.stat-number{animation:numberCount 1s ease-out;font-weight:900}.stat-label{opacity:.9}@keyframes statSlideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.auto-dismiss-timer{margin:2rem 0 1rem;text-align:center}.timer-bar{background:#e5e7eb;border-radius:2px;height:3px;margin:0 auto .5rem;overflow:hidden;position:relative;width:200px}.timer-bar:after{animation:timerProgress 8s linear;background:linear-gradient(135deg,#10b981,#059669);content:"";height:100%;left:0;position:absolute;top:0;width:0}@keyframes timerProgress{0%{width:0}to{width:100%}}.celebration-continue-btn{align-items:center;animation:buttonPulse 2s ease-in-out infinite;background:linear-gradient(135deg,#8b5cf6,#7c3aed);border:none;border-radius:50px;color:#fff;cursor:pointer;display:inline-flex;font-size:1.1rem;font-weight:600;gap:.5rem;padding:1rem 2rem;transition:all .3s ease}.celebration-continue-btn:hover{box-shadow:0 8px 25px #8b5cf666;transform:translateY(-2px)}@keyframes buttonPulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.success-message-container{animation:messageSlideIn 1s ease-out 2.4s both;margin:2rem 0}.success-message{align-items:flex-start;background:linear-gradient(135deg,#ecfdf5,#d1fae5);border:2px solid #10b981;border-radius:16px;display:flex;gap:1rem;padding:1.5rem;text-align:left}.success-icon{animation:successIconSpin 2s ease-in-out infinite;color:#10b981;font-size:1.5rem;margin-top:.2rem}@keyframes messageSlideIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes successIconSpin{0%,to{transform:rotate(0deg)}50%{transform:rotate(10deg)}}@media (max-width:768px){.completion-celebration-modal{margin:1rem;max-height:95vh;padding:2rem 1rem}.celebration-title{font-size:2rem}.trophy-icon{font-size:3rem}.achievement-stats,.project-details-animated{grid-template-columns:1fr}.members-celebration-grid{grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}}@keyframes celebrationFadeIn{0%{opacity:0}to{opacity:1}}@keyframes cardSlideIn{0%{opacity:0;transform:translateY(50px)}to{opacity:1;transform:translateY(0)}}.refresh-team-btn{align-items:center;background-color:#3b82f6;border:none;border-radius:.375rem;color:#fff;cursor:pointer;display:flex;font-size:.875rem;gap:.5rem;padding:.5rem 1rem;transition:background-color .2s}.refresh-team-btn:hover{background-color:#2563eb}.show-celebration-btn{background-color:#f59e0b;border:none;border-radius:.25rem;color:#fff;cursor:pointer;font-size:.75rem;margin-left:auto;padding:.25rem .5rem}.completed-team-banner{animation:celebrateGlow 2s ease-in-out infinite alternate;background:linear-gradient(135deg,#10b981,#059669);border-radius:.5rem;color:#fff;margin-bottom:1rem;padding:1rem}@keyframes celebrateGlow{0%{box-shadow:0 0 20px #10b98180}to{box-shadow:0 0 30px #10b981cc}}.completed-banner-content{align-items:center;display:flex;gap:1rem}.completed-trophy{animation:bounce 1s ease-in-out infinite;font-size:2rem}.supervisor-restriction-notice{margin-top:1rem}.restriction-card{background:linear-gradient(135deg,#fef3c7,#fde68a);border:1px solid #f59e0b;border-radius:12px;margin-bottom:1rem;padding:20px}.restriction-header{align-items:center;display:flex;gap:12px;margin-bottom:15px}.restriction-header .supervisor-icon{color:#d97706;font-size:1.5rem}.restriction-header h4{color:#92400e;font-size:1.2rem;font-weight:600;margin:0}.restriction-content p{color:#92400e;line-height:1.5;margin-bottom:15px}.supervisor-info{background:#ffffffb3;border-radius:8px;margin-bottom:15px;padding:12px}.supervisor-info p{color:#78350f;font-size:.9rem;margin:5px 0}.restriction-note{align-items:flex-start;background:#d977061a;border-radius:6px;display:flex;gap:8px;padding:10px}.restriction-note .info-icon{color:#d97706;flex-shrink:0;margin-top:2px}.restriction-note small{color:#92400e;font-style:italic}.disabled-section{opacity:.7;position:relative}.disabled-note{align-items:center;color:#6b7280;display:flex;font-style:italic;gap:5px;margin-top:8px}.disabled-note svg{font-size:.8rem}.materials-page{background:#fff;margin:0 auto;max-width:1200px;min-height:100vh;padding:2rem}.materials-page-header{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:16px;box-shadow:0 8px 32px #667eea26;color:#fff;margin-bottom:2.5rem;padding:3rem 2.5rem}.header-content{align-items:flex-end;display:flex;gap:2rem;justify-content:space-between}.header-text{flex:1 1}.page-title{align-items:center;display:flex;font-size:2.5rem;font-weight:700;gap:1rem;letter-spacing:-.02em;margin:0 0 1rem}.title-icon{color:#ffffffe6;font-size:2rem}.page-subtitle{color:#ffffffd9;font-size:1.2rem;line-height:1.5;margin:0;max-width:600px}.header-stats{display:flex;gap:1.5rem}.stat-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff26;border:1px solid #fff3;min-width:120px;padding:1.5rem}.stat-number{color:#fff;font-size:2rem;margin-bottom:.5rem}.stat-label{color:#fffc}.materials-controls-section{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;margin-bottom:2.5rem;padding:2rem}.controls-container{align-items:flex-end;display:flex;gap:2rem}.search-section{flex:1 1;max-width:400px}.search-input-wrapper{align-items:center;display:flex;position:relative}.search-icon{color:#64748b;font-size:1.1rem;left:1rem;position:absolute;z-index:1}.search-input{background:#fff;border:2px solid #e2e8f0;border-radius:8px;font-size:1rem;padding:.875rem 1rem .875rem 2.75rem;transition:all .2s ease;width:100%}.search-input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.filter-section{align-items:flex-end;display:flex;gap:1rem}.filter-group{display:flex;flex-direction:column;gap:.5rem}.filter-label{align-items:center;color:#374151;display:flex;font-size:.9rem;font-weight:600;gap:.5rem}.filter-icon{color:#6b7280;font-size:.8rem}.filter-select{border:2px solid #e2e8f0;border-radius:8px;cursor:pointer;font-size:.95rem;min-width:160px;padding:.875rem 1rem;transition:all .2s ease}.filter-select:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.refresh-btn{background:#667eea;border-radius:8px;color:#fff;font-weight:600;gap:.5rem;padding:.875rem 1.5rem}.refresh-btn:hover{background:#5a67d8;transform:translateY(-1px)}.refresh-icon{font-size:.9rem}.materials-content-area{background:#fff}.materials-loading-state{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;display:flex;justify-content:center;min-height:400px}.loading-content{padding:3rem}.loading-spinner{color:#667eea;font-size:3rem;margin-bottom:1.5rem}.loading-content h3{color:#374151;font-size:1.5rem;font-weight:600;margin-bottom:.5rem}.loading-content p{color:#6b7280;font-size:1rem}.materials-error-state{align-items:center;background:#fef2f2;border:1px solid #fecaca;border-radius:12px;display:flex;justify-content:center;min-height:400px}.error-content{padding:3rem}.error-icon{font-size:3rem}.error-content h3{color:#dc2626;font-size:1.5rem;font-weight:600;margin-bottom:1rem}.error-message{color:#7f1d1d;font-size:1rem;margin-bottom:2rem}.retry-button{align-items:center;background:#ef4444;border-radius:8px;display:inline-flex;font-weight:600;gap:.5rem;padding:.875rem 1.5rem;transition:all .2s ease}.retry-button:hover{background:#dc2626}.materials-grid{grid-template-columns:repeat(auto-fill,minmax(380px,1fr))}.material-card{border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 6px -1px #0000000d;overflow:hidden;transition:all .3s ease}.material-card:hover{border-color:#cbd5e1;box-shadow:0 20px 25px -5px #0000001a}.material-card-header{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between;padding:1.5rem 1.5rem 0}.file-icon-container,.file-type-indicator{align-items:center;display:flex}.file-icon-container{background:#f1f5f9;border-radius:12px;height:48px;justify-content:center;width:48px}.file-icon.pdf{background:#dc26261a;color:#dc2626}.file-icon.word{background:#2563eb1a;color:#2563eb}.file-icon.powerpoint{background:#ea580c1a;color:#ea580c}.file-icon.image{background:#0596691a;color:#059669}.file-icon.default{background:#6b72801a;color:#6b7280}.material-meta{align-items:flex-end;flex-direction:column;gap:.5rem}.category-badge{background:#e0e7ff;border-radius:20px;color:#3730a3;font-size:.8rem;font-weight:600;letter-spacing:.05em;padding:.25rem .75rem;text-transform:uppercase}.upload-date{color:#6b7280;font-size:.85rem;font-weight:500}.material-card-content{padding:1.5rem}.material-title{color:#1f2937;font-size:1.25rem;font-weight:700;line-height:1.4;margin:0 0 1rem}.material-description{font-size:.95rem;line-height:1.6;margin:0 0 1.5rem}.material-details-grid{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1.5rem}.detail-item{align-items:center;display:flex;flex:1 1;gap:.75rem}.detail-icon{font-size:.9rem;width:16px}.detail-label{font-size:.9rem;font-weight:600;min-width:fit-content}.detail-value{color:#6b7280;font-size:.9rem;word-break:break-word}.target-audience-section{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:1rem;padding:1rem}.audience-label{align-items:center;color:#374151;display:flex;font-size:.9rem;font-weight:600;gap:.5rem;margin-bottom:.75rem}.audience-icon{color:#667eea;font-size:.9rem}.audience-badges{display:flex;flex-wrap:wrap;gap:.5rem}.audience-badge{background:#667eea;border-radius:20px;color:#fff;font-size:.8rem;font-weight:600;padding:.375rem .875rem}.material-card-actions{background:#f8fafc;border-top:1px solid #e2e8f0;justify-content:space-between;padding:1rem 1.5rem 1.5rem}.download-info,.download-stats,.material-card-actions{align-items:center;display:flex}.download-stats{color:#6b7280;font-size:.85rem;gap:.5rem}.download-stat-icon{font-size:.8rem}.download-button{align-items:center;background:#667eea;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:.95rem;font-weight:600;gap:.75rem;padding:.75rem 1.5rem;transition:all .2s ease}.download-button:hover{background:#5a67d8;box-shadow:0 4px 12px #667eea66;transform:translateY(-1px)}.download-btn-icon{font-size:.9rem}.materials-empty-state{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;display:flex;justify-content:center;min-height:400px}.empty-content{max-width:500px;padding:3rem}.empty-icon{color:#cbd5e1;font-size:4rem;margin-bottom:2rem}.empty-content h3{color:#374151;font-size:1.5rem;font-weight:600;margin-bottom:1rem}.empty-message{color:#6b7280;line-height:1.6;margin-bottom:2rem}.clear-filters-button{align-items:center;background:#f3f4f6;border:1px solid #d1d5db;border-radius:8px;color:#374151;cursor:pointer;display:inline-flex;font-weight:600;gap:.5rem;padding:.75rem 1.5rem;transition:all .2s ease}.clear-filters-button:hover{background:#e5e7eb;border-color:#9ca3af}.clear-icon{font-size:.85rem}@media (max-width:768px){.materials-page{padding:1rem}.materials-page-header{padding:2rem 1.5rem}.header-content{align-items:flex-start;flex-direction:column;gap:1.5rem}.page-title{font-size:2rem}.page-subtitle{font-size:1rem}.controls-container{align-items:stretch;flex-direction:column;gap:1.5rem}.search-section{max-width:none}.filter-section{flex-wrap:wrap;gap:1rem}.materials-grid{gap:1.5rem;grid-template-columns:1fr}.material-card-actions{align-items:stretch;flex-direction:column;gap:1rem}.download-button{justify-content:center}}@media (max-width:480px){.material-card-header{flex-direction:column;gap:1rem}.material-card-header,.material-meta{align-items:flex-start}}.evaluations-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));margin-top:1rem}.evaluation-card{background:#fff;border-left:4px solid #f59e0b;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:1.5rem}.evaluation-card .evaluation-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:1rem}.evaluation-card .evaluation-header h4{color:#1f2937;margin:0}.evaluation-card .phase-badge{background:#3b82f6;color:#fff}.evaluation-card .phase-badge,.evaluation-card .status-badge{border-radius:4px;font-size:.75rem;font-weight:600;padding:.25rem .5rem}.evaluation-card .status-badge{text-transform:uppercase}.evaluation-card .status-badge.pending_admin_review{background:#fef3c7;color:#92400e}.evaluation-card .status-badge.admin_reviewed{background:#dbeafe;color:#1e40af}.evaluation-card .status-badge.finalized{background:#d1fae5;color:#065f46}.evaluation-review-modal{max-height:90vh;max-width:1000px;overflow-y:auto;width:90vw}.grades-table{margin-top:1rem}.grades-table .table-header{background:#f9fafb;border-radius:8px 8px 0 0;color:#374151;font-weight:600}.grades-table .table-header,.grades-table .table-row{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:2fr 1fr 1fr 2fr;padding:1rem}.grades-table .table-row{align-items:center;border-bottom:1px solid #e5e7eb}.grades-table .grade-input{width:80px}.grades-table .grade-input,.grades-table .reason-input{border:1px solid #d1d5db;border-radius:4px;padding:.5rem}.grades-table .reason-input{width:100%}.grades-table .reason-input:disabled{background:#f9fafb;color:#9ca3af}.grade-card{background:#fff;border-left:4px solid #10b981;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:1rem;padding:1.5rem}.grade-card .grade-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:1rem}.grade-card .grade-badges{align-items:center;display:flex;gap:.5rem}.grade-card .grade-badge{border-radius:6px;font-size:1.1rem;font-weight:600;padding:.5rem 1rem}.grade-card .grade-badge.a{background:#10b981;color:#fff}.grade-card .grade-badge.b{background:#3b82f6;color:#fff}.grade-card .grade-badge.c{background:#f59e0b;color:#fff}.grade-card .grade-badge.d{background:#ef4444;color:#fff}.grade-card .mark-badge{background:#f3f4f6;border-radius:6px;color:#374151;font-weight:600;padding:.5rem 1rem}.grade-card .modification-notice{align-items:flex-start;background:#fef3c7;border:1px solid #f59e0b;border-radius:6px;display:flex;gap:.5rem;margin:1rem 0;padding:1rem}.grade-card .modification-notice .info-icon{color:#f59e0b;flex-shrink:0;margin-top:.2rem}.grade-card .grade-breakdown{background:#f9fafb;border-radius:6px;margin-top:1rem;padding:1rem}.grade-card .grade-breakdown h5{color:#374151;margin:0 0 .5rem}.grade-card .grade-breakdown p{color:#6b7280;font-size:.9rem;margin:0}.progress-container{background-color:#f8fafc;padding:20px}.no-supervisor-state,.no-team-state,.progress-error,.progress-loading{align-items:center;background:#fff;border-radius:12px;box-shadow:0 4px 6px #0000001a;display:flex;flex-direction:column;justify-content:center;min-height:400px;padding:60px 20px;text-align:center}.error-icon,.no-supervisor-icon,.no-team-icon,.progress-loading .spinning{color:#6b7280;font-size:3rem;margin-bottom:20px}.retry-button{background:#3b82f6;border:none;border-radius:6px;color:#fff;cursor:pointer;margin-top:15px;padding:10px 20px;transition:background-color .2s}.retry-button:hover{background:#2563eb}.progress-header{box-shadow:0 2px 4px #0000001a;margin-bottom:20px;padding:20px}.header-content h2{color:#1f2937;font-size:1.5rem;margin:0 0 5px}.header-content p{color:#6b7280;font-size:.9rem;margin:0}.refresh-button{background:#f3f4f6;border:1px solid #d1d5db;gap:8px;padding:8px 16px;transition:all .2s}.refresh-button:hover{background:#e5e7eb}.progress-overview{grid-gap:20px;display:grid;gap:20px;grid-template-columns:2fr 1fr;margin-bottom:20px}.supervisor-info-card,.team-info-card{background:#fff;border-radius:12px;box-shadow:0 2px 4px #0000001a;padding:20px}.supervisor-info-card h3,.team-info-card h3{color:#1f2937;font-size:1.1rem;font-weight:600;margin:0 0 15px}.team-details{display:flex;flex-direction:column;gap:10px}.detail-row{border-bottom:1px solid #f3f4f6;padding:8px 0}.detail-row:last-child{border-bottom:none}.detail-row .label{color:#4b5563;font-weight:500}.detail-row .value{color:#1f2937;font-weight:500}.phase-badge{background:#dbeafe;color:#1d4ed8;font-size:.8rem}.status-badge{border-radius:4px;padding:4px 8px}.status-badge.on-track{background:#d1fae5;color:#065f46}.status-badge.needs-improvement{background:#fef3c7;color:#92400e}.status-badge.delayed{background:#fee2e2;color:#991b1b}.status-badge.completed{background:#d1fae5;color:#065f46}.status-badge.not-set{background:#f3f4f6;color:#6b7280}.completion-row{background:#f0fdf4;border:none;border-radius:6px;padding:12px}.completed-date{align-items:center;color:#065f46;display:flex;font-weight:600;gap:8px}.trophy-icon{color:#f59e0b}.supervisor-details{align-items:center;display:flex;gap:15px}.supervisor-icon{color:#3b82f6;font-size:2rem}.supervisor-name{color:#1f2937;font-weight:600;margin-bottom:4px}.supervisor-department{color:#6b7280;font-size:.9rem;margin-bottom:2px}.supervisor-email{color:#3b82f6;font-size:.8rem}.progress-stats{grid-template-columns:2fr 1fr 1fr;margin-bottom:20px}.stat-card{border-radius:12px;padding:20px}.stat-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:15px}.stat-header h3{color:#4b5563;font-size:1rem;margin:0}.progress-bar-container{background:#f3f4f6;border-radius:4px;height:8px;margin-bottom:10px;overflow:hidden;width:100%}.progress-bar-fill{height:100%;transition:width .5s ease}.progress-details{color:#6b7280;font-size:.8rem}.stat-icon{color:#3b82f6;font-size:1.5rem;margin-bottom:10px}.stat-number{color:#1f2937;font-size:1.5rem;font-weight:700;margin-bottom:4px}.stat-label{color:#4b5563;font-size:.9rem;font-weight:600;margin-bottom:2px}.stat-sublabel{color:#6b7280;font-size:.8rem}.milestones-section{box-shadow:0 2px 4px #0000001a;margin-bottom:20px;padding:20px}.milestones-header{align-items:center;border-bottom:1px solid #f3f4f6;display:flex;justify-content:space-between;margin-bottom:20px;padding-bottom:15px}.milestones-header h3{color:#1f2937;font-size:1.2rem;margin:0}.milestones-summary{background:#f3f4f6;border-radius:6px;color:#4b5563;font-size:.9rem;font-weight:500;padding:6px 12px}.milestones-list{gap:15px}.no-milestones{padding:40px 20px}.no-milestones p{margin:8px 0}.milestone-item{align-items:flex-start;border:1px solid #e5e7eb;border-radius:8px;display:flex;gap:15px;padding:15px;transition:all .2s}.milestone-item:hover{box-shadow:0 2px 8px #0000001a}.milestone-item.completed{background:#f0fdf4;border-color:#10b981}.milestone-item.pending{background:#fefefe}.milestone-item.custom{border-left:4px solid #8b5cf6}.milestone-indicator{flex-shrink:0;padding-top:2px}.milestone-icon{font-size:1.2rem}.milestone-icon.completed{color:#10b981}.milestone-icon.pending{color:#6b7280}.milestone-icon.overdue{color:#ef4444}.milestone-header{margin-bottom:8px}.milestone-name{color:#1f2937;font-size:1rem;font-weight:600;margin:0}.milestone-meta{align-items:center;gap:8px}.milestone-weight{background:#e0e7ff;color:#3730a3}.milestone-type-badge,.milestone-weight{border-radius:4px;font-size:.75rem;font-weight:500;padding:2px 6px}.milestone-type-badge.custom{background:#f3e8ff;color:#7c3aed}.milestone-type-badge.predefined{background:#dbeafe;color:#1d4ed8}.customized-badge{background:#fef3c7;border-radius:4px;color:#92400e;font-size:.75rem;font-weight:500;padding:2px 6px}.milestone-description{font-size:.9rem;line-height:1.4;margin:8px 0}.milestone-footer{margin-top:10px}.milestone-due-date{font-size:.8rem;gap:6px}.calendar-icon,.overdue-label{font-size:.7rem}.overdue-label{background:#fee2e2;border-radius:3px;color:#991b1b;font-weight:500;margin-left:8px;padding:2px 6px}.milestone-status{align-items:center;display:flex;font-size:.8rem;font-weight:500;gap:6px}.milestone-status.completed{color:#10b981}.milestone-status.pending{color:#6b7280}.status-icon{font-size:.8rem}.status-notes-section{background:#fff;border-radius:12px;box-shadow:0 2px 4px #0000001a;margin-bottom:20px;padding:20px}.status-notes-section h3{color:#1f2937;font-size:1.1rem;margin:0 0 15px}.status-notes{background:#f8fafc;border-left:4px solid #3b82f6;border-radius:8px;padding:15px}.status-notes p{color:#374151;line-height:1.5;margin:0}.notes-footer{color:#6b7280;font-size:.8rem;font-style:italic;margin-top:10px}.completion-celebration{background:linear-gradient(135deg,#fef3c7,#f0fdf4);border:1px solid #10b981;border-radius:12px;margin-bottom:20px;padding:30px 20px;text-align:center}.celebration-content{margin:0 auto;max-width:400px}.celebration-icon{animation:bounce 2s infinite;color:#f59e0b;font-size:3rem;margin-bottom:15px}.completion-celebration h3{color:#065f46;font-size:1.5rem;margin:0 0 10px}.completion-celebration p{color:#047857;font-size:1.1rem;margin:0 0 15px}.completion-date{color:#065f46;font-size:1rem;font-weight:600}.team-basic-info{background:#f8fafc;border-radius:8px;margin-top:20px;padding:20px}.team-basic-info .info-item{border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;margin:8px 0;padding:8px 0}.team-basic-info .info-item:last-child{border-bottom:none}.team-basic-info .label{color:#4b5563;font-weight:500}.team-basic-info .value{color:#1f2937;font-weight:500}@media (max-width:768px){.progress-container{padding:15px}.progress-header{flex-direction:column;gap:15px;text-align:center}.progress-overview,.progress-stats{grid-template-columns:1fr}.milestones-header{align-items:stretch;flex-direction:column;gap:10px}.milestone-footer,.milestone-header{align-items:flex-start;flex-direction:column;gap:8px}}.team-meeting-section{background:#f8fafc;border:2px solid #e2e8f0;border-radius:8px;margin-bottom:1rem;padding:1rem}.active-meeting-info{text-align:center}.meeting-status{align-items:center;display:flex;gap:.5rem;justify-content:center;margin-bottom:.5rem}.status-indicator{animation:pulse 2s infinite;background-color:#10b981;border-radius:50%;height:8px;width:8px}.meeting-details{color:#6b7280;margin-bottom:1rem}.join-meeting-btn,.start-meeting-btn{align-items:center;background:#3b82f6;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-weight:600;gap:.5rem;justify-content:center;padding:.75rem 1.5rem;width:100%}.join-meeting-btn:hover,.start-meeting-btn:hover{background:#2563eb}.join-meeting-btn:disabled,.start-meeting-btn:disabled{background:#9ca3af;cursor:not-allowed}.professionalMeetingInterfaceOverlay{align-items:center;background:linear-gradient(135deg,#f8fafc,#e1e7ef);bottom:0;display:flex;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;justify-content:center;left:0;padding:8px;position:fixed;right:0;top:0;z-index:9999}.meetingInterfaceContainer{background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 25px 50px #00000014,0 10px 20px #0000000a,0 0 0 1px #ffffff0d;display:flex;flex-direction:column;height:100%;max-height:900px;max-width:1600px;overflow:hidden;position:relative;width:100%}.meetingInterfaceHeader{align-items:center;background:linear-gradient(135deg,#6366f1,#8b5cf6);border-bottom:1px solid #ffffff1a;color:#fff;display:flex;flex-shrink:0;justify-content:space-between;min-height:60px;padding:16px 20px}.meetingInterfaceHeader h3{font-size:clamp(16px,2.5vw,20px);font-weight:600;letter-spacing:-.025em;margin:0;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.screenShareStatusIndicator{display:flex;flex-grow:1;justify-content:center;margin:0 16px}.screenShareStatusBadge{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff26;border-radius:20px;gap:8px}.meetingDurationDisplay,.screenShareStatusBadge{align-items:center;display:flex;font-size:clamp(12px,2vw,14px);font-weight:500;padding:6px 12px;white-space:nowrap}.meetingDurationDisplay{background:#ffffff1a;border-radius:12px}.connectionQualityIndicator{align-items:center;background:#f0fdf4;border-bottom:1px solid #e2e8f0;color:#15803d;display:flex;flex-shrink:0;font-size:clamp(12px,2vw,14px);font-weight:500;gap:8px;padding:8px 20px}.connectionStatusDot{background-color:#22c55e;border-radius:50%;flex-shrink:0;height:8px;width:8px}.professionalVideoGridLayout{grid-gap:12px;background:#fafbfc;display:grid;flex:1 1;gap:12px;min-height:0;overflow:hidden;padding:16px}.standardLayoutMode{grid-template-columns:1fr;grid-template-rows:1fr auto}.screenShareLayoutMode{grid-template-columns:1fr 200px;grid-template-rows:1fr}.primaryVideoDisplayContainer{align-items:center;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:2px solid #e2e8f0;border-radius:12px;display:flex;justify-content:center;min-height:200px;overflow:hidden;position:relative}.screenShareActiveContainer{background:#000;min-height:300px}.participantsDisplayArea{grid-gap:8px;align-items:stretch;display:grid;gap:8px}.gridParticipantsLayout{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));max-height:200px;overflow-y:auto}.sidebarParticipantsLayout{grid-auto-rows:120px;grid-template-columns:1fr;max-height:100%;overflow-y:auto;scrollbar-color:#cbd5e1 #0000;scrollbar-width:thin}.sidebarParticipantsLayout::-webkit-scrollbar{width:4px}.sidebarParticipantsLayout::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:2px}.participantVideoContainer{align-items:center;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:2px solid #e2e8f0;border-radius:8px;display:flex;justify-content:center;min-height:100px;overflow:hidden;position:relative;transition:all .2s ease}.participantVideoContainer:hover{border-color:#3b82f6;box-shadow:0 4px 12px #3b82f626;transform:translateY(-1px)}.localParticipantVideoContainer{background:linear-gradient(135deg,#6366f1,#8b5cf6);border-color:#6366f1}.participantVideoStream{border-radius:6px;height:100%;object-fit:cover;width:100%}.screenShareStream{background:#000;object-fit:contain}.videoOverlayControlsPanel{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:linear-gradient(#0000,#000c);bottom:0;color:#fff;left:0;padding:8px 12px;position:absolute;right:0}.compactOverlay{padding:4px 8px}.participantIdentificationLabel{font-size:clamp(12px,2vw,14px);font-weight:600;margin-bottom:4px;text-shadow:0 1px 2px #00000080}.participantStatusIndicatorsGroup{display:flex;flex-wrap:wrap;gap:4px}.participantStatusBadge{align-items:center;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#0009;border-radius:10px;display:flex;font-size:clamp(10px,1.5vw,12px);font-weight:500;gap:3px;padding:2px 6px}.microphoneMutedBadge{background:#ef4444e6}.cameraDisabledBadge{background:#f59e0be6}.meetingHostBadge{background:#a855f7e6}.noVideoDisplayPlaceholder{align-items:center;color:#64748b;display:flex;flex-direction:column;height:100%;justify-content:center;padding:16px;text-align:center}.participantAvatarPlaceholder{align-items:center;background:linear-gradient(135deg,#3b82f6,#1d4ed8);border:3px solid #e2e8f0;border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:clamp(16px,4vw,24px);font-weight:700;height:clamp(40px,8vw,64px);justify-content:center;margin-bottom:8px;width:clamp(40px,8vw,64px)}.availableSlotIcon{background:linear-gradient(135deg,#d1d5db,#9ca3af);color:#6b7280}.participantNamePlaceholder{color:#374151;font-size:clamp(12px,2.5vw,16px);font-weight:600;margin-bottom:4px}.participantConnectionStatus{color:#6b7280;font-size:clamp(10px,2vw,14px)}.professionalMeetingControlsPanel{-ms-overflow-style:none;align-items:center;background:#fff;border-top:1px solid #e2e8f0;display:flex;flex-shrink:0;gap:clamp(8px,2vw,16px);justify-content:center;overflow-x:auto;padding:clamp(12px,3vw,20px);scrollbar-width:none}.professionalMeetingControlsPanel::-webkit-scrollbar{display:none}.meetingControlButton{align-items:center;background:#fff;border:2px solid #e2e8f0;border-radius:12px;color:#64748b;cursor:pointer;display:flex;flex-shrink:0;font-size:clamp(16px,4vw,20px);gap:6px;height:clamp(44px,10vw,56px);justify-content:center;min-width:clamp(44px,10vw,56px);touch-action:manipulation;transition:all .2s ease;-webkit-user-select:none;user-select:none}.meetingControlButton:hover:not(:disabled){box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.meetingControlButton:active{transform:translateY(0)}.controlButtonActive{background:#3b82f6;border-color:#3b82f6;color:#fff}.controlButtonMuted{background:#ef4444;border-color:#ef4444;color:#fff}.controlButtonDisabled{background:#f59e0b;border-color:#f59e0b;color:#fff}.controlButtonSharing{background:#10b981;border-color:#10b981;color:#fff}.screenShareControlButton{min-width:clamp(44px,12vw,80px);padding:0 clamp(12px,3vw,20px);width:auto}.controlButtonLabel{display:none;font-size:clamp(10px,2vw,14px);font-weight:500;white-space:nowrap}.leaveMeetingButton{background:#ef4444;border-color:#ef4444;color:#fff}.leaveMeetingButton:hover{background:#dc2626;border-color:#dc2626}.participantsPanelToggleButton{align-items:center;background:#fff;border:2px solid #e2e8f0;border-radius:12px;box-shadow:0 4px 12px #0000001a;color:#64748b;cursor:pointer;display:flex;font-size:clamp(16px,4vw,18px);height:clamp(40px,8vw,48px);justify-content:center;position:absolute;right:16px;top:80px;touch-action:manipulation;transition:all .2s ease;width:clamp(40px,8vw,48px);z-index:10}.participantsPanelToggleButton:hover{background:#3b82f6;border-color:#3b82f6;color:#fff;transform:translateY(-2px)}.participantCountIndicator{align-items:center;background:#ef4444;border:2px solid #fff;border-radius:50%;color:#fff;display:flex;font-size:10px;font-weight:600;height:18px;justify-content:center;position:absolute;right:-6px;top:-6px;width:18px}@media (min-width:1200px){.meetingInterfaceHeader{padding:20px 24px}.professionalVideoGridLayout{gap:16px;padding:20px}.gridParticipantsLayout{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.controlButtonLabel{display:block}.meetingControlButton{flex-direction:column;gap:4px;padding:8px}}@media (min-width:992px) and (max-width:1199px){.screenShareLayoutMode{grid-template-columns:1fr 180px}.gridParticipantsLayout{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}}@media (min-width:768px) and (max-width:991px){.professionalMeetingInterfaceOverlay{padding:4px}.meetingInterfaceContainer{border-radius:12px}.screenShareLayoutMode{grid-template-columns:1fr;grid-template-rows:1fr auto}.sidebarParticipantsLayout{grid-auto-rows:100px;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));max-height:150px}.professionalMeetingControlsPanel{padding:16px 12px}.participantsPanelToggleButton{right:12px;top:70px}}@media (min-width:576px) and (max-width:767px){.professionalMeetingInterfaceOverlay{padding:0}.meetingInterfaceContainer{border-radius:0;height:100vh}.meetingInterfaceHeader h3{max-width:150px}.screenShareStatusIndicator{margin:0 8px}.professionalVideoGridLayout{gap:8px;padding:12px}.gridParticipantsLayout,.sidebarParticipantsLayout{grid-template-columns:repeat(auto-fit,minmax(100px,1fr));max-height:120px}.sidebarParticipantsLayout{grid-auto-rows:80px}.participantsPanelToggleButton{right:8px;top:60px}.professionalMeetingControlsPanel{gap:8px;justify-content:space-around;padding:12px 8px}}@media (max-width:575px){.professionalMeetingInterfaceOverlay{padding:0}.meetingInterfaceContainer{border-radius:0;height:100vh}.meetingInterfaceHeader{min-height:50px;padding:12px 16px}.meetingInterfaceHeader h3{font-size:14px;max-width:100px}.meetingDurationDisplay,.screenShareStatusBadge{font-size:11px;padding:4px 8px}.connectionQualityIndicator{font-size:12px;padding:6px 16px}.professionalVideoGridLayout{gap:6px;padding:8px}.primaryVideoDisplayContainer{min-height:180px}.gridParticipantsLayout,.sidebarParticipantsLayout{gap:4px;grid-template-columns:repeat(2,1fr);max-height:100px}.sidebarParticipantsLayout{grid-auto-rows:70px}.participantVideoContainer{border-radius:6px;min-height:70px}.videoOverlayControlsPanel{padding:4px 6px}.participantIdentificationLabel{font-size:10px;margin-bottom:2px}.participantStatusBadge{font-size:8px;gap:2px;padding:1px 4px}.participantsPanelToggleButton{font-size:14px;height:36px;right:6px;top:50px;width:36px}.participantCountIndicator{font-size:8px;height:14px;right:-4px;top:-4px;width:14px}.professionalMeetingControlsPanel{gap:6px;justify-content:space-around;padding:8px 6px}.meetingControlButton{border-radius:10px;font-size:14px;height:40px;min-width:40px}.screenShareControlButton{min-width:40px;padding:0 8px}}@media (max-width:375px){.meetingInterfaceHeader h3{font-size:12px;max-width:80px}.primaryVideoDisplayContainer{min-height:160px}.gridParticipantsLayout,.sidebarParticipantsLayout{max-height:80px}.sidebarParticipantsLayout{grid-auto-rows:60px}.professionalMeetingControlsPanel{gap:4px;padding:6px 4px}.meetingControlButton{font-size:12px;height:36px;min-width:36px}}@media (max-height:500px) and (orientation:landscape){.meetingInterfaceContainer{height:100vh;max-height:none}.meetingInterfaceHeader{min-height:40px;padding:8px 16px}.connectionQualityIndicator{padding:4px 16px}.professionalVideoGridLayout{padding:8px}.gridParticipantsLayout{grid-auto-rows:70px;max-height:80px}.professionalMeetingControlsPanel{padding:8px}.participantsPanelToggleButton{top:40px}}.professionalMeetingInterfaceOverlay{animation:fadeIn .3s ease}.participantVideoContainer{animation:slideIn .4s ease}@media (prefers-reduced-motion:reduce){.meetingControlButton,.participantVideoContainer,.participantsPanelToggleButton,.professionalMeetingInterfaceOverlay{animation:none;transition:none}.meetingControlButton:hover,.participantsPanelToggleButton:hover{transform:none}}@media (prefers-contrast:high){.meetingInterfaceContainer{border:2px solid #000}.meetingControlButton,.participantVideoContainer{border:2px solid #333}}.meetingControlButton:focus,.participantsPanelToggleButton:focus{outline:2px solid #3b82f6;outline-offset:2px}.sr-only{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.touch-friendly{min-height:44px;min-width:44px}@media print{.professionalMeetingInterfaceOverlay{display:none!important}}.student-meetings-main-wrapper{background-color:#fafbfc;font-family:Inter,Segoe UI,Tahoma,Geneva,Verdana,sans-serif;margin:0 auto;max-width:1200px;min-height:100vh;padding:24px}.student-meetings-header-section{align-items:flex-start;border-bottom:2px solid #e5e7eb;display:flex;justify-content:space-between;margin-bottom:32px;padding-bottom:24px}.student-meetings-title-group{flex:1 1}.student-meetings-main-title{color:#1f2937;font-size:2rem;font-weight:700;letter-spacing:-.025em;margin:0 0 8px}.student-meetings-subtitle{color:#6b7280;font-size:1rem;line-height:1.5;margin:0}.student-meetings-refresh-button{align-items:center;background:linear-gradient(135deg,#3b82f6,#1d4ed8);border:none;border-radius:8px;box-shadow:0 2px 4px #3b82f633;color:#fff;cursor:pointer;display:flex;font-weight:500;gap:8px;padding:12px 20px;transition:all .2s ease}.student-meetings-refresh-button:hover{background:linear-gradient(135deg,#2563eb,#1d4ed8);box-shadow:0 4px 8px #3b82f64d;transform:translateY(-1px)}.student-meetings-refresh-icon,.student-meetings-refresh-text{font-size:14px}.student-meetings-loading-state{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:80px 24px;text-align:center}.student-meetings-loading-spinner{animation:spin 1s linear infinite;color:#3b82f6;font-size:2rem;margin-bottom:16px}.student-meetings-loading-text{color:#6b7280;font-size:1.1rem;font-weight:500}.student-meetings-empty-state{background:#fff;border:2px dashed #d1d5db;border-radius:12px;margin:20px 0;padding:80px 24px;text-align:center}.student-meetings-empty-icon-wrapper{margin-bottom:24px}.student-meetings-empty-icon{color:#d1d5db;font-size:4rem}.student-meetings-empty-title{color:#374151;font-size:1.5rem;font-weight:600;margin:0 0 12px}.student-meetings-empty-description{color:#6b7280;font-size:1rem;line-height:1.6;margin:0 auto;max-width:400px}.student-meetings-grid-container{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));margin-top:24px}.student-meetings-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 1px 3px #0000001a;overflow:hidden;position:relative;transition:all .3s ease}.student-meetings-card:hover{border-color:#3b82f6;box-shadow:0 8px 25px #0000001a;transform:translateY(-2px)}.student-meetings-card--live{background:linear-gradient(135deg,#fff,#f0fdf4);border-left:4px solid #10b981}.student-meetings-card--upcoming{background:linear-gradient(135deg,#fff,#f8fafc);border-left:4px solid #3b82f6}.student-meetings-card--ended{background:linear-gradient(135deg,#fff,#f9fafb);border-left:4px solid #6b7280;opacity:.9}.student-meetings-card-header{align-items:flex-start;border-bottom:1px solid #f3f4f6;display:flex;justify-content:space-between;padding:20px 24px 16px}.student-meetings-card-title{color:#1f2937;flex:1 1;font-size:1.25rem;font-weight:600;line-height:1.4;margin:0 16px 0 0}.student-meetings-badge-container{display:flex;gap:8px}.student-meetings-status-badge{border-radius:20px;font-size:.75rem;font-weight:600;letter-spacing:.05em;padding:4px 12px;text-transform:uppercase}.student-meetings-status-badge--live{background:#dcfce7;border:1px solid #bbf7d0;color:#166534}.student-meetings-status-badge--upcoming{background:#dbeafe;border:1px solid #93c5fd;color:#1e40af}.student-meetings-status-badge--ended{background:#f3f4f6;border:1px solid #d1d5db;color:#4b5563}.student-meetings-card-body{padding:20px 24px}.student-meetings-info-grid{grid-gap:12px;display:grid;gap:12px;margin-bottom:20px}.student-meetings-info-item{align-items:center;display:flex;gap:12px;padding:8px 0}.student-meetings-info-icon{color:#3b82f6;font-size:1rem;min-width:18px}.student-meetings-info-text{color:#4b5563;font-size:.9rem;font-weight:500}.student-meetings-room-code{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:4px;color:#475569;font-family:Courier New,monospace;font-size:.85rem;padding:2px 6px}.student-meetings-description-section{border-top:1px solid #f3f4f6;margin-top:16px;padding-top:16px}.student-meetings-description-title{color:#374151;font-size:.9rem;font-weight:600;margin:0 0 8px}.student-meetings-description-text{color:#6b7280;font-size:.85rem;line-height:1.6;margin:0}.student-meetings-card-footer{background:#fafbfc;border-top:1px solid #f3f4f6;padding:16px 24px 20px}.student-meetings-action-buttons{align-items:center;display:flex;gap:12px}.student-meetings-join-button{align-items:center;border-radius:8px;display:flex;flex:1 1;font-size:.9rem;font-weight:600;gap:8px;justify-content:center;padding:12px 20px;text-decoration:none;transition:all .2s ease}.student-meetings-join-button--live{animation:pulse-green 2s infinite;background:linear-gradient(135deg,#10b981,#059669);color:#fff}.student-meetings-join-button--live:hover{box-shadow:0 4px 12px #10b98166;transform:translateY(-1px)}@keyframes pulse-green{0%,to{box-shadow:0 0 0 0 #10b981b3}50%{box-shadow:0 0 0 4px #10b98100}}.student-meetings-join-button--upcoming{background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff}.student-meetings-join-button--upcoming:hover{box-shadow:0 4px 12px #3b82f666;transform:translateY(-1px)}.student-meetings-button-icon{font-size:16px}.student-meetings-button-text{font-size:.9rem}.student-meetings-copy-button{align-items:center;background:#fff;border:1px solid #d1d5db;border-radius:6px;color:#6b7280;cursor:pointer;display:flex;font-size:.85rem;gap:6px;padding:10px 16px;transition:all .2s ease}.student-meetings-copy-button:hover{background:#f9fafb;border-color:#9ca3af;color:#374151}.student-meetings-copy-icon{font-size:14px}.student-meetings-copy-text{font-size:.8rem;font-weight:500}.student-meetings-ended-indicator{align-items:center;background:#f3f4f6;border-radius:6px;display:flex;flex:1 1;gap:8px;justify-content:center;padding:10px 16px}.student-meetings-ended-icon{color:#6b7280;font-size:16px}.student-meetings-ended-text{color:#6b7280;font-size:.9rem;font-weight:500}@media (max-width:768px){.student-meetings-main-wrapper{padding:16px}.student-meetings-header-section{align-items:stretch;flex-direction:column;gap:16px}.student-meetings-main-title{font-size:1.5rem}.student-meetings-grid-container{gap:16px;grid-template-columns:1fr}.student-meetings-card-header{align-items:flex-start;flex-direction:column;gap:12px}.student-meetings-card-title{margin-right:0}.student-meetings-action-buttons{flex-direction:column;gap:8px}.student-meetings-join-button{flex:none}}@media (max-width:480px){.student-meetings-card-body,.student-meetings-card-footer,.student-meetings-card-header{padding-left:16px;padding-right:16px}.student-meetings-info-item{align-items:flex-start;flex-direction:column;gap:4px}}.student-deliverables-container{margin:0 auto;max-width:1200px;padding:20px}.inline-message{align-items:center;border-radius:6px;display:flex;font-weight:500;justify-content:space-between;margin-bottom:20px;padding:12px 20px}.inline-message.success{background-color:#d1fae5;border:1px solid #34d399;color:#065f46}.inline-message.error{background-color:#fee2e2;border:1px solid #f87171;color:#991b1b}.inline-message.info{background-color:#dbeafe;border:1px solid #60a5fa;color:#1e40af}.inline-message button{background:none;border:none;color:inherit;cursor:pointer;font-size:18px;opacity:.7}.deliverables-header{margin-bottom:30px}.deliverables-header h2{color:#1f2937;margin-bottom:15px}.team-info-bar{align-items:center;background:#f8fafc;border-radius:8px;display:flex;font-size:14px;gap:20px;padding:12px 20px}.team-name{color:#374151;font-weight:600}.supervisor-name{color:#6b7280}.role-notice{color:#d97706;font-style:italic;margin-left:auto}.deliverables-error,.deliverables-loading{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:60px 20px;text-align:center}.deliverables-loading .spinning{animation:spin 1s linear infinite;color:#3b82f6;font-size:24px;margin-bottom:15px}.deliverables-error .error-icon{color:#ef4444;font-size:48px;margin-bottom:20px}.deliverables-error h3{color:#374151;margin-bottom:10px}.deliverables-error p{color:#6b7280}.no-deliverables{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:60px 20px;text-align:center}.no-deliverables .empty-icon{color:#d1d5db;font-size:48px;margin-bottom:20px}.no-deliverables h3{color:#374151;margin-bottom:10px}.no-deliverables p{color:#6b7280}.deliverables-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(400px,1fr))}.deliverable-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:24px;transition:all .2s ease}.deliverable-card:hover{box-shadow:0 4px 12px #00000026}.deliverable-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:16px}.deliverable-title h3{color:#1f2937;font-size:18px;font-weight:600;margin:0 0 8px}.phase-badge{background:#3b82f6;border-radius:4px;display:inline-block;font-size:12px;font-weight:500;padding:4px 8px}.status-icon{flex-shrink:0;font-size:24px}.status-icon.approved{color:#10b981}.status-icon.rejected{color:#ef4444}.status-icon.revision{color:#f97316}.status-icon.pending{color:#fbbf24}.status-icon.overdue{color:#ef4444}.deliverable-description{color:#6b7280;font-size:14px;line-height:1.5;margin-bottom:16px}.deliverable-details{margin-bottom:20px}.detail-row{font-size:14px;gap:8px;margin-bottom:8px}.detail-icon{color:#6b7280;flex-shrink:0}.detail-label{color:#374151;font-weight:500}.deadline.overdue{color:#ef4444;font-weight:600}.submission-info{border-top:1px solid #e5e7eb;margin-bottom:20px;padding-top:20px}.submission-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.submission-header h4{color:#1f2937;font-size:16px;margin:0}.status-badge.approved{background:#d1fae5;color:#065f46}.status-badge.rejected{color:#991b1b}.status-badge.needs_revision{background:#fed7aa;color:#9a3412}.status-badge.pending{color:#92400e}.submission-file{align-items:center;background:#f8fafc;border-radius:8px;display:flex;gap:12px;margin-bottom:12px;padding:12px}.file-icon{color:#6b7280;font-size:20px}.file-info{flex:1 1}.file-name{display:block;margin-bottom:4px}.file-meta{color:#6b7280}.download-btn{align-items:center;background:#3b82f6;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;height:36px;justify-content:center;text-decoration:none;transition:background-color .2s;width:36px}.download-btn:hover{background:#2563eb}.submission-marks{align-items:center;background:#fef3c7;border-radius:6px;display:flex;gap:8px;margin-bottom:12px;padding:8px 12px}.marks-icon{color:#d97706}.submission-feedback{margin-bottom:12px}.feedback-header{align-items:center;color:#374151;display:flex;font-weight:500;gap:8px;margin-bottom:8px}.feedback-icon{color:#6b7280}.feedback-content{background:#f3f4f6;border-radius:6px;color:#374151;font-size:14px;line-height:1.5;padding:12px}.upload-section{border-top:1px solid #e5e7eb;padding-top:20px}.revision-notice{align-items:center;background:#fef3c7;border:1px solid #fbbf24;border-radius:6px;color:#92400e;display:flex;font-size:14px;gap:8px;margin-bottom:16px;padding:10px 12px}.upload-controls{display:flex;justify-content:center}.upload-btn{align-items:center;background:#3b82f6;border:none;border-radius:8px;color:#fff;cursor:pointer;display:inline-flex;font-weight:500;gap:8px;padding:12px 24px;text-decoration:none;transition:all .2s}.upload-btn:hover:not(.uploading){background:#2563eb;transform:translateY(-1px)}.upload-btn.uploading{background:#9ca3af;cursor:not-allowed}.upload-btn .spinning{animation:spin 1s linear infinite}.leader-only-notice{align-items:center;background:#f3f4f6;border:1px solid #d1d5db;border-radius:6px;color:#6b7280;display:flex;font-size:14px;font-style:italic;gap:8px;justify-content:center;padding:12px}@media (max-width:768px){.deliverables-grid{grid-template-columns:1fr}.deliverable-header{gap:12px}.deliverable-header,.team-info-bar{align-items:flex-start;flex-direction:column}.team-info-bar{gap:8px}.role-notice{margin-left:0}}.progress-container{background:#f8fafc;margin:0 auto;max-width:1200px;min-height:100vh;padding:2rem}.progress-header{align-items:center;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;display:flex;justify-content:space-between;margin-bottom:2rem;padding:1.5rem}.progress-title-section h2{align-items:center;color:#1f2937;display:flex;gap:.5rem;margin:0}.progress-icon{color:#3b82f6}.progress-title-section p{color:#6b7280;margin:.5rem 0 0}.refresh-progress-btn{align-items:center;background:#3b82f6;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;gap:.5rem;padding:.75rem 1.5rem;transition:background-color .2s}.refresh-progress-btn:hover{background:#2563eb}.refresh-progress-btn:disabled{background:#9ca3af;cursor:not-allowed}.progress-team-overview{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:2fr 1fr;margin-bottom:2rem}.supervisor-info-card,.team-overview-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:1.5rem}.team-overview-card h3{color:#1f2937;margin:0 0 .5rem}.team-meta{color:#6b7280;display:flex;gap:1rem}.supervisor-info-card h4{color:#374151;font-size:.9rem;letter-spacing:.05em;margin:0 0 .5rem;text-transform:uppercase}.supervisor-details strong{color:#1f2937;display:block;font-size:1.1rem}.supervisor-details span{color:#6b7280;font-size:.9rem}.progress-overview{margin-bottom:2rem}.progress-stats{grid-gap:1.5rem;gap:1.5rem;grid-template-columns:1fr 1fr 1fr}.milestones-summary-card,.progress-stat-card,.status-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:1.5rem;text-align:center}.progress-circle{height:100px;margin:0 auto 1rem;position:relative;width:100px}.progress-circle,.progress-inner{align-items:center;border-radius:50%;display:flex;justify-content:center}.progress-inner{background:#fff;flex-direction:column;height:70px;width:70px}.progress-percentage{color:#1f2937;font-size:1.5rem;font-weight:700}.progress-label{color:#6b7280;font-size:.8rem}.status-card{align-items:center;display:flex;gap:1rem;text-align:left}.status-indicator{border-radius:2px;height:60px;width:4px}.status-info h4{color:#374151;margin:0 0 .5rem}.status-text{color:#1f2937;font-weight:700}.milestones-summary-card{align-items:center;display:flex;gap:1rem;text-align:left}.summary-icon{color:#f59e0b;font-size:2rem}.summary-info h4{color:#374151;margin:0 0 .5rem}.milestones-section{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;margin-bottom:2rem;padding:1.5rem}.milestones-section h3{color:#1f2937;margin:0 0 1.5rem}.no-milestones{color:#6b7280;padding:3rem;text-align:center}.no-milestones-icon{color:#d1d5db;font-size:3rem;margin-bottom:1rem}.milestones-list{display:flex;flex-direction:column;gap:1rem}.milestone-card{align-items:flex-start;border:2px solid #e5e7eb;border-radius:8px;display:flex;gap:1rem;padding:1.5rem;transition:all .2s}.milestone-card.completed{background:#f0fdf4;border-color:#10b981}.milestone-card.overdue{background:#fef2f2;border-color:#ef4444}.milestone-status{margin-top:.25rem}.milestone-completed-icon{color:#10b981;font-size:1.5rem}.milestone-pending-icon{color:#f59e0b;font-size:1.5rem}.milestone-content{flex:1 1}.milestone-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:.5rem}.milestone-header h4{color:#1f2937;margin:0}.milestone-meta{display:flex;gap:.5rem}.milestone-phase,.milestone-weight{background:#e5e7eb;border-radius:4px;color:#374151;font-size:.8rem;padding:.25rem .5rem}.milestone-description{color:#6b7280;line-height:1.5;margin:.5rem 0}.milestone-footer{align-items:center;display:flex;justify-content:space-between;margin-top:1rem}.custom-milestone{background:#dbeafe;color:#1d4ed8}.custom-milestone,.default-milestone{border-radius:4px;font-size:.8rem;padding:.25rem .5rem}.default-milestone{background:#f3f4f6;color:#374151}.milestone-due-date{align-items:center;color:#6b7280;display:flex;font-size:.9rem;gap:.5rem}.overdue-label{background:#ef4444;border-radius:4px;color:#fff;font-size:.8rem;margin-left:.5rem;padding:.25rem .5rem}.milestone-completion-status{align-items:center;display:flex}.completed-label{color:#10b981;font-weight:700}.pending-label{color:#f59e0b;font-weight:700}.progress-notes{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:1.5rem}.progress-notes h4{color:#1f2937;margin:0 0 1rem}.notes-content{background:#f9fafb;border-left:4px solid #3b82f6;border-radius:8px;line-height:1.6;margin-bottom:.5rem;padding:1rem}.notes-meta{color:#6b7280;font-size:.9rem}.progress-no-supervisor,.progress-no-team{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:4rem 2rem;text-align:center}.no-supervisor-icon,.no-team-icon{color:#d1d5db;font-size:4rem;margin-bottom:1rem}.progress-no-supervisor h3,.progress-no-team h3{color:#1f2937;margin:0 0 1rem}.progress-no-supervisor p,.progress-no-team p{color:#6b7280;margin:.5rem 0}@media (max-width:768px){.progress-container{padding:1rem}.progress-header{flex-direction:column;gap:1rem;text-align:center}.progress-stats,.progress-team-overview{grid-template-columns:1fr}.milestone-footer,.milestone-header{align-items:flex-start;flex-direction:column;gap:.5rem}}:root{--primary-blue:#06c;--primary-dark:#049;--secondary-gray:#6c757d;--light-gray:#f8f9fa;--border-gray:#dee2e6;--white:#fff;--black:#212529;--success:#28a745;--danger:#dc3545;--warning:#ffc107;--info:#17a2b8;--sidebar-width:260px;--sidebar-collapsed:70px;--header-height:60px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--radius:6px;--radius-lg:10px;--shadow:0 2px 4px #0000001a;--shadow-lg:0 4px 8px #00000026}*{box-sizing:border-box;margin:0;padding:0}body{background-color:#f8f9fa;background-color:var(--light-gray);color:#212529;color:var(--black);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Arial,sans-serif;font-size:14px;line-height:1.5}.faculty-dashboard{display:flex;min-height:100vh}.mobile-menu-toggle{align-items:center;background:#2b77ad;background:var(--primary-blue);border:none;border-radius:50%;box-shadow:0 4px 15px #06c6;color:#fff;cursor:pointer;display:none;font-size:20px;height:52px;justify-content:center;left:16px;padding:14px;position:fixed;top:16px;transition:all .3s ease;width:52px;z-index:1002}.mobile-menu-toggle:hover{background:#049;background:var(--primary-dark);transform:scale(1.05)}.faculty-sidebar{background:#fff;background:var(--white);border-right:2px solid #dee2e6;border-right:2px solid var(--border-gray);box-shadow:0 2px 4px #0000001a;box-shadow:var(--shadow);height:100vh;left:0;overflow-x:hidden;position:fixed;top:0;transition:width .3s ease,transform .3s ease;width:260px;width:var(--sidebar-width);z-index:1001}.faculty-sidebar.collapsed{width:70px;width:var(--sidebar-collapsed)}.faculty-sidebar.mobile-visible{transform:translateX(0)}.sidebar-header-faculty{align-items:center;background:#fff;background:var(--white);border-bottom:2px solid #dee2e6;border-bottom:2px solid var(--border-gray);display:flex;justify-content:space-between;min-height:60px;min-height:var(--header-height);padding:16px;padding:var(--space-4);position:relative}.sidebar-logo{align-items:center;background:#2b77ad;background:var(--primary-blue);border:2px solid #dee2e6;border:2px solid var(--border-gray);border-radius:6px;border-radius:var(--radius);box-shadow:0 2px 4px #0000001a;box-shadow:var(--shadow);color:#fff;display:none;font-size:18px;font-weight:800;height:45px;justify-content:center;transition:all .3s ease;width:45px}.faculty-title{color:#2b77ad;color:var(--primary-blue);font-size:18px;font-weight:700;letter-spacing:.5px;transition:opacity .3s ease;white-space:nowrap}.faculty-sidebar.collapsed .sidebar-header-faculty{align-items:center;flex-direction:column;gap:12px;gap:var(--space-3);justify-content:center;min-height:100px;padding:12px;padding:var(--space-3)}.faculty-sidebar.collapsed .sidebar-logo{display:flex;margin-bottom:0;position:relative;z-index:2}.faculty-sidebar.collapsed .faculty-title{display:none}.collapse-btn-faculty{background:#fff;background:var(--white);border:2px solid #dee2e6;border:2px solid var(--border-gray);border-radius:6px;border-radius:var(--radius);color:#6c757d;color:var(--secondary-gray);cursor:pointer;font-size:16px;font-weight:600;height:36px;min-width:36px;padding:8px;padding:var(--space-2);position:relative;transition:all .2s ease}.collapse-btn-faculty:hover{background:#f8f9fa;background:var(--light-gray);border-color:#2b77ad;border-color:var(--primary-blue);color:#2b77ad;color:var(--primary-blue)}.faculty-sidebar.collapsed .collapse-btn-faculty{flex-shrink:0;margin-top:8px;margin-top:var(--space-2);position:relative;z-index:1}.faculty-menu{display:flex;flex-direction:column;gap:8px;gap:var(--space-2);padding:20px 0;padding:var(--space-5) 0}.faculty-menu .menu-item{align-items:center;background:none;border:1px solid #0000;border-radius:6px;border-radius:var(--radius);color:#212529;color:var(--black);cursor:pointer;display:flex;font-size:15px;font-weight:500;gap:12px;gap:var(--space-3);margin:0 8px;margin:0 var(--space-2);padding:16px 20px;padding:var(--space-4) var(--space-5);position:relative;text-align:left;transition:all .3s ease;white-space:nowrap}.faculty-menu .menu-item:before{font-size:16px;min-width:24px;text-align:center;transition:all .3s ease}.faculty-menu .group-management:before{content:"👥"}.faculty-menu .profile:before{content:"👤"}.faculty-menu .materials:before{content:"📁"}.faculty-menu .messages:before{content:"💬"}.faculty-menu .meetings:before{content:"📅"}.faculty-menu .board-meetings:before{content:"🏛️"}.faculty-menu .announcements:before{content:"📢"}.faculty-menu .history:before{content:"📋"}.faculty-menu .menu-item:hover{background:#f8f9fa;background:var(--light-gray);border-color:#dee2e6;border-color:var(--border-gray);box-shadow:0 2px 4px #0000001a;box-shadow:var(--shadow);color:#2b77ad;color:var(--primary-blue);transform:translateX(4px)}.faculty-menu .menu-item:hover:before{transform:scale(1.2)}.faculty-menu .menu-item.active{background:#2b77ad;background:var(--primary-blue);border-color:#049;border-color:var(--primary-dark);color:#fff}.faculty-menu .menu-item.active:before{color:#fff}.faculty-sidebar.collapsed .faculty-menu{padding:12px 0;padding:var(--space-3) 0}.faculty-sidebar.collapsed .faculty-menu .menu-item{border-radius:6px;border-radius:var(--radius);height:50px;justify-content:center;margin:8px;margin:var(--space-2) var(--space-2);overflow:visible;padding:12px;padding:var(--space-3);position:relative;text-align:center;width:50px}.faculty-sidebar.collapsed .faculty-menu .menu-item .menu-text{display:none}.faculty-sidebar.collapsed .faculty-menu .menu-item:before{align-items:center;display:flex;font-size:20px;justify-content:center;margin-right:0}.faculty-sidebar.collapsed .faculty-menu .menu-item:hover{background:#f8f9fa;background:var(--light-gray);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;box-shadow:var(--shadow-lg);transform:scale(1.1)}.faculty-sidebar.collapsed .faculty-menu .menu-item:hover:before{transform:scale(1.3)}.faculty-sidebar.collapsed .faculty-menu .menu-item:hover:after{animation:tooltipFadeIn .2s ease;background:#212529;background:var(--black);border-radius:6px;border-radius:var(--radius);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;box-shadow:var(--shadow-lg);color:#fff;content:attr(data-tooltip);font-size:12px;font-weight:500;left:60px;opacity:.9;padding:8px 12px;padding:var(--space-2) var(--space-3);position:absolute;top:50%;transform:translateY(-50%);white-space:nowrap;z-index:1000}@keyframes tooltipFadeIn{0%{opacity:0;transform:translateY(-50%) translateX(-5px)}to{opacity:.9;transform:translateY(-50%) translateX(0)}}.faculty-sidebar.collapsed .faculty-menu .menu-item.active{background:#2b77ad;background:var(--primary-blue);box-shadow:0 0 15px #0066cc4d;color:#fff;transform:scale(1.05)}.faculty-sidebar.collapsed .faculty-menu .menu-item.active:before{color:#fff;filter:brightness(1.2)}.faculty-content{flex:1 1;margin-left:260px;margin-left:var(--sidebar-width);min-height:100vh;padding:24px;padding:var(--space-6);position:relative;transition:margin-left .3s ease}.faculty-sidebar.collapsed+.faculty-content{margin-left:70px;margin-left:var(--sidebar-collapsed)}.content-box{border:1px solid #dee2e6;border:1px solid var(--border-gray);border-radius:.75rem;border-radius:var(--radius-lg);box-shadow:0 2px 4px #0000001a;box-shadow:var(--shadow);margin-bottom:24px;margin-bottom:var(--space-6);padding:24px;padding:var(--space-6)}.content-box,.welcome-message{background:#fff;background:var(--white)}.welcome-message{border:2px dashed #dee2e6;border:2px dashed var(--border-gray);padding:32px;padding:var(--space-8);text-align:center}.welcome-message h2{color:#2b77ad;color:var(--primary-blue);font-size:28px;font-weight:400;margin-bottom:16px;margin-bottom:var(--space-4)}.welcome-message p{color:#6c757d;color:var(--secondary-gray);font-size:16px;margin:0 auto;max-width:500px}.notification-icon{background:#fff;background:var(--white);border:1px solid #dee2e6;border:1px solid var(--border-gray);border-radius:50%;box-shadow:0 2px 4px #0000001a;box-shadow:var(--shadow);cursor:pointer;padding:12px;padding:var(--space-3);position:fixed;right:20px;top:20px;z-index:50}.notification-icon:hover{background:#f8f9fa;background:var(--light-gray)}.notification-bell{color:#2b77ad;color:var(--primary-blue);font-size:18px}.notification-badge{background:#dc3545;background:var(--danger);border:2px solid #fff;border:2px solid var(--white);border-radius:50%;color:#fff;font-size:10px;font-weight:600;min-width:16px;padding:2px 6px;position:absolute;right:-4px;text-align:center;top:-4px}.notification-panel{background:#fff;background:var(--white);border:1px solid #dee2e6;border:1px solid var(--border-gray);border-radius:.75rem;border-radius:var(--radius-lg);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;box-shadow:var(--shadow-lg);max-height:400px;overflow-y:auto;padding:20px;padding:var(--space-5);position:fixed;right:20px;top:70px;width:320px;z-index:1000}.notification-panel h3{border-bottom:1px solid #dee2e6;border-bottom:1px solid var(--border-gray);color:#2b77ad;color:var(--primary-blue);font-size:16px;font-weight:600;margin-bottom:16px;margin-bottom:var(--space-4);padding-bottom:8px;padding-bottom:var(--space-2)}.notification{border-bottom:1px solid #f8f9fa;border-bottom:1px solid var(--light-gray);border-radius:6px;border-radius:var(--radius);margin-bottom:8px;margin-bottom:var(--space-2);padding:12px;padding:var(--space-3)}.notification:hover{background:#f8f9fa;background:var(--light-gray)}.notification.unread{background:#e3f2fd;border-left:3px solid #2b77ad;border-left:3px solid var(--primary-blue)}.notification button{background:#28a745;background:var(--success);border:none;border-radius:6px;border-radius:var(--radius);color:#fff;cursor:pointer;font-size:12px;font-weight:500;margin-top:8px;margin-top:var(--space-2);padding:8px 12px;padding:var(--space-2) var(--space-3)}.notification button:hover{background:#218838}h1,h2,h3,h4,h5,h6{color:#212529;color:var(--black);font-weight:600;margin-bottom:16px;margin-bottom:var(--space-4)}h1{font-size:32px}h2{font-size:24px}h3{font-size:20px}h4{font-size:18px}h5{font-size:16px}h6{font-size:14px}p{line-height:1.6;margin-bottom:12px;margin-bottom:var(--space-3)}.form-group{margin-bottom:20px;margin-bottom:var(--space-5)}.form-group label{color:#212529;color:var(--black);display:block;font-size:14px;margin-bottom:8px;margin-bottom:var(--space-2)}.form-group input,.form-group select,.form-group textarea{background:#fff;background:var(--white);border:1px solid #dee2e6;border:1px solid var(--border-gray);border-radius:6px;border-radius:var(--radius);font-family:inherit;font-size:14px;padding:12px;padding:var(--space-3)}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#2b77ad;border-color:var(--primary-blue);box-shadow:0 0 0 2px #06c3;outline:none}.form-group input:disabled,.form-group select:disabled,.form-group textarea:disabled{background:#f8f9fa;background:var(--light-gray);color:#6c757d;color:var(--secondary-gray);cursor:not-allowed}.form-group textarea{min-height:100px;resize:vertical}.search-input{border:1px solid #dee2e6;border:1px solid var(--border-gray);border-radius:6px;border-radius:var(--radius);font-size:14px;padding:12px;padding:var(--space-3);width:250px}.search-input:focus{border-color:#2b77ad;border-color:var(--primary-blue);box-shadow:0 0 0 2px #06c3;outline:none}.action-button{align-items:center;background:#2b77ad;background:var(--primary-blue);border:none;border-radius:6px;border-radius:var(--radius);color:#fff;cursor:pointer;display:inline-flex;font-size:14px;font-weight:500;gap:8px;gap:var(--space-2);justify-content:center;margin-bottom:8px;margin-bottom:var(--space-2);margin-right:8px;margin-right:var(--space-2);min-height:38px;padding:12px 16px;padding:var(--space-3) var(--space-4);text-decoration:none}.action-button.active,.action-button:hover{background:#049;background:var(--primary-dark)}.action-button.cancel{background:#6c757d;background:var(--secondary-gray)}.action-button.cancel:hover{background:#5a6268}.action-button.danger{background:#dc3545;background:var(--danger)}.action-button.danger:hover{background:#c82333}.action-button.success{background:#28a745;background:var(--success)}.action-button.success:hover{background:#218838}.action-button.warning{background:#ffc107;background:var(--warning);color:#212529;color:var(--black)}.action-button.warning:hover{background:#e0a800}.icon-button{align-items:center;border:none;border-radius:6px;border-radius:var(--radius);cursor:pointer;display:inline-flex;height:32px;justify-content:center;margin:0 4px;margin:0 var(--space-1);width:32px}.icon-button.edit{background:#17a2b8;background:var(--info);color:#fff}.icon-button.edit:hover{background:#138496}.icon-button.delete{background:#dc3545;background:var(--danger);color:#fff}.icon-button.delete:hover{background:#c82333}.card{background:#fff;background:var(--white);border:1px solid #dee2e6;border:1px solid var(--border-gray);border-radius:.75rem;border-radius:var(--radius-lg);box-shadow:0 2px 4px #0000001a;box-shadow:var(--shadow);margin-bottom:16px;margin-bottom:var(--space-4);padding:20px;padding:var(--space-5)}.card:hover{box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;box-shadow:var(--shadow-lg)}.card-header{align-items:center;border-bottom:1px solid #dee2e6;border-bottom:1px solid var(--border-gray);display:flex;justify-content:space-between;margin-bottom:20px;margin-bottom:var(--space-5);padding-bottom:12px;padding-bottom:var(--space-3)}.card-header h3{color:#212529;color:var(--black);font-size:18px;margin-bottom:0}.grid-1{grid-gap:20px;grid-gap:var(--space-5);grid-template-columns:1fr}.grid-1,.grid-2{display:grid;gap:20px;gap:var(--space-5)}.grid-2{grid-gap:20px;grid-gap:var(--space-5);grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.grid-3{grid-gap:16px;grid-gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.grid-3,.grid-4{display:grid;gap:16px;gap:var(--space-4)}.grid-4{grid-gap:16px;grid-gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.profile-container{margin:0 auto;max-width:1000px}.profile-header{align-items:center;background:#fff;background:var(--white);border:1px solid #dee2e6;border:1px solid var(--border-gray);border-radius:.75rem;border-radius:var(--radius-lg);box-shadow:0 2px 4px #0000001a;box-shadow:var(--shadow);display:flex;margin-bottom:32px;margin-bottom:var(--space-8);padding:24px;padding:var(--space-6)}.profile-avatar-container{margin-right:24px;margin-right:var(--space-6)}.profile-avatar{border:4px solid #fff;border:4px solid var(--white);box-shadow:0 2px 4px #0000001a;box-shadow:var(--shadow);height:140px;width:140px}.profile-titles{flex:1 1}.profile-name{color:#212529;color:var(--black);font-size:32px;font-weight:500;margin-bottom:8px;margin-bottom:var(--space-2)}.profile-title{color:#6c757d;color:var(--secondary-gray);font-size:18px;font-weight:400;margin-bottom:12px;margin-bottom:var(--space-3)}.status-indicator{background:#d4edda;border:1px solid #c3e6cb;color:#28a745;color:var(--success);display:inline-flex;font-size:14px;font-weight:500;padding:8px 16px;padding:var(--space-2) var(--space-4)}.status-dot{background:#28a745;background:var(--success);border-radius:50%;height:8px;margin-right:8px;margin-right:var(--space-2);width:8px}.profile-grid{grid-gap:24px;grid-gap:var(--space-6);display:grid;gap:24px;gap:var(--space-6);grid-template-columns:repeat(auto-fit,minmax(320px,1fr));margin-bottom:24px;margin-bottom:var(--space-6)}.info-card{background:#fff;background:var(--white);border:1px solid #dee2e6;border:1px solid var(--border-gray);border-radius:.75rem;border-radius:var(--radius-lg);box-shadow:0 2px 4px #0000001a;box-shadow:var(--shadow);padding:24px;padding:var(--space-6)}.info-card:hover{box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;box-shadow:var(--shadow-lg)}.info-title{border-bottom:2px solid #f8f9fa;border-bottom:2px solid var(--light-gray);color:#212529;color:var(--black);font-size:18px;font-weight:600;margin-bottom:20px;margin-bottom:var(--space-5);padding-bottom:8px;padding-bottom:var(--space-2)}.info-content p{align-items:baseline;display:flex;margin-bottom:12px;margin-bottom:var(--space-3)}.field-label{color:#212529;color:var(--black);font-size:14px;font-weight:600;margin-right:12px;margin-right:var(--space-3);min-width:100px}.metrics-grid{grid-gap:16px;grid-gap:var(--space-4);display:grid;gap:16px;gap:var(--space-4);grid-template-columns:repeat(2,1fr)}.metric-item{background:#f8f9fa;background:var(--light-gray);border:1px solid #dee2e6;border:1px solid var(--border-gray);border-radius:6px;border-radius:var(--radius);padding:20px;padding:var(--space-5);text-align:center}.metric-item:hover{background:#e9ecef}.metric-value{color:#2b77ad;color:var(--primary-blue);font-size:32px;font-weight:700;margin-bottom:8px;margin-bottom:var(--space-2)}.metric-label{color:#6c757d;color:var(--secondary-gray);font-size:14px;font-weight:500}.edit-profile-btn{background:#2b77ad;background:var(--primary-blue);border:none;border-radius:6px;border-radius:var(--radius);color:#fff;cursor:pointer;display:block;font-size:14px;font-weight:500;margin:24px auto 0;margin:var(--space-6) auto 0;padding:16px 20px;padding:var(--space-4) var(--space-5);text-align:center;width:200px}.edit-profile-btn:hover{background:#049;background:var(--primary-dark)}.profile-picture-section{margin-bottom:24px;margin-bottom:var(--space-6)}.upload-avatar-button{background:#2b77ad;background:var(--primary-blue);border:3px solid #fff;border:3px solid var(--white);bottom:0;box-shadow:0 2px 4px #0000001a;box-shadow:var(--shadow);color:#fff;padding:12px;padding:var(--space-3);right:0}.upload-avatar-button:hover{background:#049;background:var(--primary-dark)}.update-photo-content{gap:4px;gap:var(--space-1)}.camera-icon{font-size:14px}.upload-avatar-button span{font-size:10px;font-weight:500;white-space:nowrap}.table-container{border:1px solid #dee2e6;border:1px solid var(--border-gray);border-radius:.75rem;border-radius:var(--radius-lg);box-shadow:0 2px 4px #0000001a;box-shadow:var(--shadow);margin:20px 0;margin:var(--space-5) 0;overflow-x:auto}.data-table{background:#fff;background:var(--white);border-collapse:collapse;font-size:14px;width:100%}.data-table td,.data-table th{border-bottom:1px solid #dee2e6;border-bottom:1px solid var(--border-gray);padding:16px;padding:var(--space-4);text-align:left}.data-table th{color:#212529;color:var(--black);font-weight:600;position:sticky;top:0;z-index:10}.data-table th,.data-table tr:hover{background:#f8f9fa;background:var(--light-gray)}.data-table tr.clickable-row{cursor:pointer}.content-preview{color:#6c757d;color:var(--secondary-gray);max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.audience-tag{background:#17a2b8;background:var(--info);border-radius:20px;color:#fff;font-weight:500}.audience-tag,.status-badge{font-size:12px;padding:4px 12px;padding:var(--space-1) var(--space-3)}.status-badge.draft{background:#f8f9fa;border:1px solid #dee2e6;border:1px solid var(--border-gray);color:#6c757d;color:var(--secondary-gray)}.status-badge.published{background:#d4edda;border:1px solid #c3e6cb;color:#28a745;color:var(--success)}.status-badge.archived{background:#f8d7da;border:1px solid #f5c6cb;color:#dc3545;color:var(--danger)}.status-badge.pending{background:#fff3cd;border:1px solid #ffeaa7;color:#856404}.actions-cell{align-items:center;display:flex;gap:8px;gap:var(--space-2)}.modal-overlay{padding:var(--space-4)}.modal{background:#fff;background:var(--white);border:1px solid #dee2e6;border:1px solid var(--border-gray);border-radius:.75rem;border-radius:var(--radius-lg);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;box-shadow:var(--shadow-lg);max-height:90vh;max-width:600px;overflow-y:auto;padding:24px;padding:var(--space-6);width:100%}.modal h3{border-bottom:1px solid #dee2e6;border-bottom:1px solid var(--border-gray);color:#212529;color:var(--black);font-size:20px;margin-bottom:20px;margin-bottom:var(--space-5);padding-bottom:12px;padding-bottom:var(--space-3)}.form-actions{border-top:1px solid #dee2e6;border-top:1px solid var(--border-gray);gap:var(--space-3);margin-top:var(--space-6);padding-top:20px;padding-top:var(--space-5)}.progress-stats{grid-gap:20px;grid-gap:var(--space-5);gap:20px;gap:var(--space-5);margin-bottom:24px;margin-bottom:var(--space-6)}.stat-card{background:#fff;background:var(--white);border:1px solid #dee2e6;border:1px solid var(--border-gray);border-radius:.75rem;border-radius:var(--radius-lg);box-shadow:0 2px 4px #0000001a;box-shadow:var(--shadow);padding:24px;padding:var(--space-6);text-align:center}.stat-card:hover{box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;box-shadow:var(--shadow-lg)}.stat-card h3{color:#6c757d;color:var(--secondary-gray);font-size:14px;font-weight:500;margin-bottom:12px;margin-bottom:var(--space-3)}.stat-value{color:#2b77ad;color:var(--primary-blue);font-size:36px;margin:12px 0;margin:var(--space-3) 0}.stat-trend{color:#6c757d;color:var(--secondary-gray);font-size:14px;font-weight:400}.progress-circle{height:80px;width:80px}.group-list{grid-gap:20px;grid-gap:var(--space-5);display:grid}.group-card,.group-list{gap:20px;gap:var(--space-5)}.group-card{align-items:center;background:#fff;background:var(--white);border:1px solid #dee2e6;border:1px solid var(--border-gray);border-radius:.75rem;border-radius:var(--radius-lg);box-shadow:0 2px 4px #0000001a;box-shadow:var(--shadow);display:flex;padding:20px;padding:var(--space-5)}.group-card:hover{box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;box-shadow:var(--shadow-lg)}.group-info{flex:1 1}.group-info h3{color:#212529;color:var(--black);font-size:18px;margin-bottom:8px;margin-bottom:var(--space-2)}.course-name{margin-bottom:12px;margin-bottom:var(--space-3)}.course-name,.meta-info{color:#6c757d;color:var(--secondary-gray);font-size:14px}.meta-info{display:flex;gap:16px;gap:var(--space-4)}.meta-info span{align-items:center;display:flex;gap:4px;gap:var(--space-1)}.group-management-options{gap:12px;gap:var(--space-3)}.group-management-options,.management-header,.section-header{display:flex;flex-wrap:wrap;margin-bottom:24px;margin-bottom:var(--space-6)}.management-header,.section-header{align-items:center;gap:16px;gap:var(--space-4);justify-content:space-between}.management-header h2,.section-header h2{color:#212529;color:var(--black);font-size:24px;margin-bottom:0}.controls,.filter-controls{align-items:center;display:flex;flex-wrap:wrap;gap:12px;gap:var(--space-3)}.filter-select{background:#fff;background:var(--white);border:1px solid #dee2e6;border:1px solid var(--border-gray);border-radius:6px;border-radius:var(--radius);font-size:14px;min-width:150px;padding:8px 12px;padding:var(--space-2) var(--space-3)}.filter-select:focus{border-color:#2b77ad;border-color:var(--primary-blue);box-shadow:0 0 0 2px #06c3;outline:none}.invitations-container,.materials-container,.meetings-container,.messages-container{padding:0}.invitations-list{grid-gap:20px;grid-gap:var(--space-5);display:grid;gap:20px;gap:var(--space-5)}.invitation-card{align-items:center;background:#fff;background:var(--white);border:1px solid #dee2e6;border:1px solid var(--border-gray);border-radius:.75rem;border-radius:var(--radius-lg);box-shadow:0 2px 4px #0000001a;box-shadow:var(--shadow);display:flex;justify-content:space-between;padding:20px;padding:var(--space-5)}.invitation-card:hover{box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;box-shadow:var(--shadow-lg)}.invite-content{flex:1 1}.invite-header{align-items:center;display:flex;gap:16px;gap:var(--space-4);margin-bottom:12px;margin-bottom:var(--space-3)}.invite-header h3{color:#212529;color:var(--black);font-size:16px;margin-bottom:0}.invite-details{grid-gap:12px;grid-gap:var(--space-3);color:#6c757d;color:var(--secondary-gray);display:grid;font-size:14px;gap:12px;gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.invite-details p{margin-bottom:8px;margin-bottom:var(--space-2)}.invite-details strong{color:#212529;color:var(--black);font-weight:600}.invite-actions{display:flex;gap:8px;gap:var(--space-2);margin-left:20px;margin-left:var(--space-5)}.action-button.accept{background:#28a745;background:var(--success)}.action-button.accept:hover{background:#218838}.action-button.decline{background:#dc3545;background:var(--danger)}.action-button.decline:hover{background:#c82333}.action-button.details{background:#17a2b8;background:var(--info)}.action-button.details:hover{background:#138496}.upload-section{background:#f8f9fa;background:var(--light-gray);border:1px solid #dee2e6;border:1px solid var(--border-gray);border-radius:.75rem;border-radius:var(--radius-lg);margin-bottom:24px;margin-bottom:var(--space-6);padding:24px;padding:var(--space-6)}.upload-section h2{color:#212529;color:var(--black);margin-bottom:20px;margin-bottom:var(--space-5)}.upload-controls{grid-gap:16px;grid-gap:var(--space-4);gap:16px;gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:16px;margin-bottom:var(--space-4)}.course-select,.group-select,.semester-select{background:var(--white);border:1px solid #dee2e6;border:1px solid var(--border-gray);border-radius:6px;border-radius:var(--radius);font-size:14px;padding:12px;padding:var(--space-3)}.file-upload-button{background:#2b77ad;background:var(--primary-blue);border-radius:6px;border-radius:var(--radius);font-size:14px;font-weight:500;padding:12px 16px;padding:var(--space-3) var(--space-4);text-align:center}.file-upload-button:hover{background:#049;background:var(--primary-dark)}.supported-files{color:#6c757d;color:var(--secondary-gray);font-size:14px}.materials-list{background:var(--white);border:1px solid #dee2e6;border:1px solid var(--border-gray);border-radius:.75rem;border-radius:var(--radius-lg);box-shadow:0 2px 4px #0000001a;box-shadow:var(--shadow);padding:24px;padding:var(--space-6)}.list-header{gap:16px;gap:var(--space-4);margin-bottom:20px;margin-bottom:var(--space-5)}.list-header h3{color:#212529;color:var(--black);font-size:18px;margin-bottom:0}.materials-grid{grid-gap:20px;grid-gap:var(--space-5);gap:20px;gap:var(--space-5)}.file-card{background:var(--white);border:1px solid #dee2e6;border:1px solid var(--border-gray);border-radius:6px;border-radius:var(--radius);padding:20px;padding:var(--space-5)}.file-card:hover{box-shadow:0 2px 4px #0000001a;box-shadow:var(--shadow)}.file-icon{font-size:32px;margin-right:20px;margin-right:var(--space-5)}.file-details h4{color:#212529;color:var(--black);font-size:16px;margin:0 0 8px;margin:0 0 var(--space-2)}.file-meta{color:#6c757d;color:var(--secondary-gray);font-size:12px;gap:12px;gap:var(--space-3)}.file-meta span{background:#f8f9fa;background:var(--light-gray);border-radius:12px;font-size:11px;padding:4px 8px;padding:var(--space-1) var(--space-2)}.file-actions{gap:8px;gap:var(--space-2);margin-left:16px;margin-left:var(--space-4)}.view-button{background:#17a2b8;background:var(--info)}.view-button:hover{background:#138496}.download-button{background:#ffc107;background:var(--warning);color:#212529;color:var(--black)}.download-button:hover{background:#e0a800}.delete-button{background:#dc3545;background:var(--danger)}.delete-button:hover{background:#c82333}.messages-container{background:#fff;background:var(--white);border:1px solid #dee2e6;border:1px solid var(--border-gray);border-radius:.75rem;border-radius:var(--radius-lg);box-shadow:0 2px 4px #0000001a;box-shadow:var(--shadow);display:flex;gap:20px;gap:var(--space-5);height:600px;overflow:hidden}.conversations-list{background:#f8f9fa;background:var(--light-gray);border-right:1px solid #dee2e6;border-right:1px solid var(--border-gray);display:flex;flex-direction:column;padding:20px;padding:var(--space-5);width:300px}.messages-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px;margin-bottom:var(--space-4)}.messages-header h2{color:#212529;color:var(--black);font-size:18px;margin-bottom:0}.new-message-btn{font-size:12px;padding:8px 12px;padding:var(--space-2) var(--space-3)}.search-bar{margin-bottom:16px;margin-bottom:var(--space-4)}.search-bar input{border:1px solid #dee2e6;border:1px solid var(--border-gray);font-size:14px;padding:8px;padding:var(--space-2);width:100%}.conversation-card,.search-bar input{border-radius:6px;border-radius:var(--radius)}.conversation-card{border:1px solid #0000;cursor:pointer;margin-bottom:8px;margin-bottom:var(--space-2);padding:12px;padding:var(--space-3)}.conversation-card:hover{background:#fff;background:var(--white);border-color:#dee2e6;border-color:var(--border-gray)}.conversation-card.active{background:#e3f2fd;border-color:#2b77ad;border-color:var(--primary-blue)}.convo-info h4{color:#212529;color:var(--black);font-size:14px;margin-bottom:4px;margin-bottom:var(--space-1)}.convo-info p{color:#6c757d;color:var(--secondary-gray);font-size:12px;margin-bottom:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.convo-meta{align-items:center;display:flex;justify-content:space-between;margin-top:8px;margin-top:var(--space-2)}.timestamp{color:#6c757d;color:var(--secondary-gray);font-size:11px}.unread-count{background:#2b77ad;background:var(--primary-blue);border-radius:50%;color:#fff;font-size:11px;font-weight:600;line-height:1;min-width:18px;padding:4px;padding:var(--space-1);text-align:center}.chat-container{background:#fff;background:var(--white);display:flex;flex:1 1;flex-direction:column}.message-content-f{border:1px solid #dee2e6;border:1px solid var(--border-gray);border-radius:6px;border-radius:var(--radius);box-shadow:0 2px 4px #0000001a;box-shadow:var(--shadow);padding:12px;padding:var(--space-3)}.message.sent .message-content-f{background:#2b77ad;background:var(--primary-blue);border-color:#2b77ad;border-color:var(--primary-blue);color:#fff}.message.received .message-content-f{background:#f8f9fa;background:var(--light-gray)}.attachment{background:#fff3;border-radius:6px;border-radius:var(--radius);font-size:12px;margin-bottom:8px;margin-bottom:var(--space-2);padding:8px;padding:var(--space-2)}.message-input{background:#f8f9fa;background:var(--light-gray);border-top:1px solid #dee2e6;border-top:1px solid var(--border-gray);padding:20px;padding:var(--space-5)}.message-input textarea{border:1px solid #dee2e6;border:1px solid var(--border-gray);border-radius:6px;border-radius:var(--radius);margin-bottom:12px;margin-bottom:var(--space-3);min-height:60px;padding:12px;padding:var(--space-3);resize:vertical;width:100%}.input-actions{align-items:center;display:flex;justify-content:space-between}.attachment-btn{background:#6c757d;background:var(--secondary-gray);font-size:14px;padding:8px 12px;padding:var(--space-2) var(--space-3)}.attachment-btn,.send-button{border:none;border-radius:6px;border-radius:var(--radius);color:#fff;cursor:pointer}.send-button{background:#2b77ad;background:var(--primary-blue);font-weight:500;padding:8px 16px;padding:var(--space-2) var(--space-4)}.no-conversation{align-items:center;color:#6c757d;color:var(--secondary-gray);display:flex;font-size:16px;height:100%;justify-content:center}.meetings-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:24px;margin-bottom:var(--space-6)}.meetings-header h2{color:#212529;color:var(--black);font-size:24px;margin-bottom:0}.schedule-button{background:#28a745;background:var(--success)}.schedule-button:hover{background:#218838}.schedule-form{background:#fff;background:var(--white);border:1px solid #dee2e6;border:1px solid var(--border-gray);border-radius:.75rem;border-radius:var(--radius-lg);box-shadow:0 2px 4px #0000001a;box-shadow:var(--shadow);margin-bottom:24px;margin-bottom:var(--space-6);padding:24px;padding:var(--space-6)}.schedule-form h3{color:#212529;color:var(--black);font-size:20px;margin-bottom:20px;margin-bottom:var(--space-5)}.form-row{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.form-row,.meetings-list{grid-gap:20px;grid-gap:var(--space-5);display:grid;gap:20px;gap:var(--space-5)}.meeting-card{align-items:center;background:#fff;background:var(--white);border:1px solid #dee2e6;border:1px solid var(--border-gray);border-radius:.75rem;border-radius:var(--radius-lg);box-shadow:0 2px 4px #0000001a;box-shadow:var(--shadow);display:flex;justify-content:space-between;padding:20px;padding:var(--space-5)}.meeting-card:hover{box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;box-shadow:var(--shadow-lg)}.meeting-info{flex:1 1}.meeting-info h4{color:#212529;color:var(--black);font-size:16px;margin-bottom:8px;margin-bottom:var(--space-2)}.meeting-meta{color:#6c757d;color:var(--secondary-gray);display:flex;flex-wrap:wrap;font-size:14px;gap:16px;gap:var(--space-4);margin-top:8px;margin-top:var(--space-2)}.meeting-meta span{align-items:center;display:flex;gap:4px;gap:var(--space-1)}.meeting-actions{align-items:center;display:flex;gap:12px;gap:var(--space-3);margin-left:20px;margin-left:var(--space-5)}.status{border-radius:20px;font-size:12px;font-weight:600;padding:8px 12px;padding:var(--space-2) var(--space-3)}.status.upcoming{background:#fff3cd;border:1px solid #ffeaa7;color:#856404}.join-button{background:#28a745;background:var(--success)}.join-button:hover{background:#218838}.board-container{min-height:600px;padding:0}.board-selection{padding:24px;padding:var(--space-6)}.board-main-title{color:#212529;color:var(--black);font-size:28px;font-weight:600;text-align:center}.board-grid,.board-main-title{margin-bottom:24px;margin-bottom:var(--space-6)}.board-grid{grid-gap:32px;grid-gap:var(--space-8);display:grid;gap:32px;gap:var(--space-8);grid-template-columns:repeat(auto-fit,minmax(350px,1fr))}.board-card{background:#fff;background:var(--white);border:2px solid #dee2e6;border:2px solid var(--border-gray);border-radius:.75rem;border-radius:var(--radius-lg);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;box-shadow:var(--shadow-lg);cursor:pointer;overflow:hidden;padding:24px;padding:var(--space-6);position:relative;transition:all .3s ease}.board-card:before{background:linear-gradient(90deg,#0000,#0066cc1a,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s ease;width:100%}.board-card:hover:before{left:100%}.board-card:hover{border-color:#2b77ad;border-color:var(--primary-blue);box-shadow:0 8px 25px #06c3;transform:translateY(-5px)}.board-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:20px;margin-bottom:var(--space-5)}.board-header h3{flex:1 1;font-size:18px;margin-bottom:0;margin-right:12px;margin-right:var(--space-3)}.board-header h3,.phase-tag{color:#212529;color:var(--black);font-weight:600}.phase-tag{background:#ffc107;background:var(--warning);border-radius:20px;font-size:12px;padding:8px 12px;padding:var(--space-2) var(--space-3);white-space:nowrap}.board-team-info{background:#f8f9fa;background:var(--light-gray);border:1px solid #dee2e6;border:1px solid var(--border-gray);border-radius:6px;border-radius:var(--radius);margin-bottom:20px;margin-bottom:var(--space-5);padding:16px;padding:var(--space-4);text-align:center}.team-name{color:#2b77ad;color:var(--primary-blue);font-size:20px;font-weight:700;margin-bottom:8px;margin-bottom:var(--space-2)}.project-course{color:#6c757d;color:var(--secondary-gray);font-size:14px;margin:0}.progress-ring{height:120px;margin:20px auto;margin:var(--space-5) auto;width:120px}.board-meta{color:#6c757d;color:var(--secondary-gray);font-size:14px;text-align:center}.board-meta p{align-items:center;margin-bottom:8px;margin-bottom:var(--space-2)}.board-meta p,.members-preview{display:flex;gap:8px;gap:var(--space-2);justify-content:center}.members-preview{flex-wrap:wrap;margin-top:12px;margin-top:var(--space-3)}.member-dot{border:2px solid #fff;border:2px solid var(--white);border-radius:50%;height:12px;width:12px}.board-detail,.member-dot{box-shadow:0 2px 4px #0000001a;box-shadow:var(--shadow)}.board-detail{background:#fff;background:var(--white);border:1px solid #dee2e6;border:1px solid var(--border-gray);border-radius:.75rem;border-radius:var(--radius-lg);padding:24px;padding:var(--space-6)}.board-nav{border-bottom:2px solid #dee2e6;border-bottom:2px solid var(--border-gray);flex-wrap:wrap;gap:16px;gap:var(--space-4);justify-content:space-between;margin-bottom:32px;margin-bottom:var(--space-8);padding-bottom:20px;padding-bottom:var(--space-5)}.back-button,.board-nav{align-items:center;display:flex}.back-button{background:#6c757d;background:var(--secondary-gray);border:none;border-radius:6px;border-radius:var(--radius);color:#fff;cursor:pointer;font-weight:500;gap:8px;gap:var(--space-2);padding:12px 16px;padding:var(--space-3) var(--space-4);transition:all .3s ease}.back-button:hover{background:#5a6268;transform:translateX(-2px)}.board-info{flex:1 1;text-align:center}.board-info h2{color:#212529;color:var(--black);font-size:24px;margin-bottom:12px;margin-bottom:var(--space-3)}.board-details{display:flex;flex-wrap:wrap;gap:12px;gap:var(--space-3);justify-content:center}.team-badge{background:#2b77ad;background:var(--primary-blue)}.course-badge,.team-badge{border-radius:20px;color:#fff;font-size:14px;font-weight:600;padding:8px 16px;padding:var(--space-2) var(--space-4)}.course-badge{background:#17a2b8;background:var(--info)}.status-pill{align-items:center;background:#d4edda;border:2px solid #c3e6cb;border-radius:25px;color:#28a745;color:var(--success);display:flex;font-size:14px;font-weight:600;gap:8px;gap:var(--space-2);padding:12px 16px;padding:var(--space-3) var(--space-4);white-space:nowrap}.pulse-dot{animation:pulse 2s infinite;background:#28a745;background:var(--success);border-radius:50%;height:10px;width:10px}.evaluation-arena{margin:24px 0;margin:var(--space-6) 0}.project-center{margin-bottom:32px;margin-bottom:var(--space-8)}.project-card{background:linear-gradient(135deg,#fff,#f8f9ff);background:linear-gradient(135deg,var(--white) 0,#f8f9ff 100%);border:3px solid #2b77ad;border:3px solid var(--primary-blue);box-shadow:0 8px 32px #0066cc26;margin:0 auto;max-width:600px;padding:24px;padding:var(--space-6);position:relative;text-align:center}.project-card,.project-card:before{border-radius:.75rem;border-radius:var(--radius-lg)}.project-card:before{background:linear-gradient(45deg,#2b77ad,#17a2b8,#2b77ad);background:linear-gradient(45deg,var(--primary-blue),var(--info),var(--primary-blue));bottom:-2px;content:"";left:-2px;opacity:.7;position:absolute;right:-2px;top:-2px;z-index:-1}.project-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px;margin-bottom:var(--space-4)}.project-header h3{color:#2b77ad;color:var(--primary-blue);font-size:24px;font-weight:700;margin-bottom:0}.project-phase{background:#ffc107;background:var(--warning);border-radius:20px;font-size:12px;padding:8px 12px;padding:var(--space-2) var(--space-3)}.project-phase,.project-title{color:#212529;color:var(--black);font-weight:600}.project-title{font-size:20px;margin-bottom:12px;margin-bottom:var(--space-3)}.project-date{color:#6c757d;color:var(--secondary-gray);font-size:14px;margin-bottom:16px;margin-bottom:var(--space-4)}.project-progress{margin-top:20px;margin-top:var(--space-5)}.metric{align-items:center;background:#0066cc0d;border:1px solid #0066cc1a;border-radius:6px;border-radius:var(--radius);display:flex;gap:12px;gap:var(--space-3);padding:12px;padding:var(--space-3)}.metric span{color:#6c757d;color:var(--secondary-gray);font-size:14px;font-weight:500;white-space:nowrap}.progress-bar{background:#f8f9fa;background:var(--light-gray);border-radius:4px;flex:1 1;height:8px;overflow:hidden;position:relative}.progress-fill{background:linear-gradient(90deg,#2b77ad,#17a2b8);background:linear-gradient(90deg,var(--primary-blue),var(--info));border-radius:4px;height:100%;transition:width .3s ease}.progress-text{color:#2b77ad;color:var(--primary-blue);font-weight:600;min-width:40px}.evaluators-grid{grid-gap:24px;grid-gap:var(--space-6);display:grid;gap:24px;gap:var(--space-6);grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin-top:24px;margin-top:var(--space-6)}.evaluator-card{background:var(--white);border:2px solid #dee2e6;border:2px solid var(--border-gray);box-shadow:0 2px 4px #0000001a;box-shadow:var(--shadow);padding:20px;padding:var(--space-5)}.evaluator-card:hover{box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;box-shadow:var(--shadow-lg);transform:translateY(-3px)}.evaluator-card.active,.evaluator-card:hover{border-color:#2b77ad;border-color:var(--primary-blue)}.evaluator-card.active{box-shadow:0 0 20px #06c3}.evaluator-card.submitted{background:linear-gradient(135deg,#fff,#f0f9f0);background:linear-gradient(135deg,var(--white) 0,#f0f9f0 100%);border-color:#28a745;border-color:var(--success)}.evaluator-card.pending{background:linear-gradient(135deg,#fff,#fffbf0);background:linear-gradient(135deg,var(--white) 0,#fffbf0 100%);border-color:#ffc107;border-color:var(--warning)}.evaluator-header{justify-content:space-between;margin-bottom:16px;margin-bottom:var(--space-4);padding:10%}.avatar,.evaluator-header{align-items:center;display:flex}.avatar{background:#f8f9fa;background:var(--light-gray);border:3px solid #dee2e6;border:3px solid var(--border-gray);border-radius:50%;font-size:24px;height:50px;justify-content:center;width:50px}.evaluator-card.submitted .avatar{background:#d4edda;border-color:#28a745;border-color:var(--success)}.evaluator-card.pending .avatar{background:#fff3cd;border-color:#ffc107;border-color:var(--warning)}.status-indicator{border-radius:20px;font-size:12px;font-weight:600;padding:4px 12px;padding:var(--space-1) var(--space-3)}.evaluator-card.submitted .status-indicator{background:#28a745;background:var(--success);color:#fff}.evaluator-card.pending .status-indicator{background:#ffc107;background:var(--warning);color:#212529;color:var(--black)}.evaluator-info{flex:1 1;margin-bottom:16px;margin-bottom:var(--space-4)}.evaluator-name{color:#212529;color:var(--black);font-size:18px;font-weight:600;margin-bottom:8px;margin-bottom:var(--space-2)}.evaluator-role{color:#6c757d;color:var(--secondary-gray);font-size:14px;font-weight:500;margin-bottom:0}.mark-form{margin-top:auto}.input-group-faculty{margin-bottom:16px;margin-bottom:var(--space-4)}.input-group-faculty label{color:#212529;color:var(--black);display:block;font-size:14px;font-weight:600;margin-bottom:8px;margin-bottom:var(--space-2)}.mark-form input{border:2px solid #dee2e6;border:2px solid var(--border-gray);border-radius:6px;border-radius:var(--radius);font-size:16px;font-weight:600;padding:12px;padding:var(--space-3);text-align:center;transition:border-color .3s ease;width:100%}.mark-form input:focus{border-color:#2b77ad;border-color:var(--primary-blue);box-shadow:0 0 0 3px #0066cc1a;outline:none}.submit-button{border-radius:var(--radius);font-size:14px;font-weight:600;padding:12px 16px;padding:var(--space-3) var(--space-4);transition:all .3s ease;width:100%}.submit-button.submit{background:#2b77ad;background:var(--primary-blue);color:#fff}.submit-button.submit:hover:not(:disabled){background:#049;background:var(--primary-dark);transform:translateY(-1px)}.submit-button.update{background:#17a2b8;background:var(--info);color:#fff}.submit-button.update:hover:not(:disabled){background:#138496;transform:translateY(-1px)}.submit-button:disabled{background:#6c757d;background:var(--secondary-gray);color:#adb5bd}.announce{padding:0}.annoucements{grid-gap:24px;grid-gap:var(--space-6);display:grid;gap:24px;gap:var(--space-6);grid-template-columns:repeat(auto-fit,minmax(350px,1fr));padding:16px 0;padding:var(--space-4) 0}.card-details{display:flex;flex-direction:column;gap:12px;gap:var(--space-3)}.announement-content{color:#6c757d;color:var(--secondary-gray);font-size:14px;line-height:1.5}.delBtn{background:#dc3545;background:var(--danger);border:none;border-radius:6px;border-radius:var(--radius);color:#fff;cursor:pointer;font-size:12px;font-weight:500;padding:8px 16px;padding:var(--space-2) var(--space-4)}.delBtn:hover{background:#c82333}.menu-text{display:inline}@media (max-width:1024px){.content-box,.faculty-content,.profile-header{padding:20px;padding:var(--space-5)}.grid-4{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.evaluator-node{transform:translate(-50%,-50%) rotate(var(--angle)) translate(180px) rotate(calc(var(--angle)*-1))}}@media (max-width:768px){.mobile-menu-toggle{display:flex}.faculty-sidebar{background:#fff;background:var(--white);box-shadow:none;height:100vh;left:0;max-width:320px;overflow-y:auto;position:fixed;top:0;transform:translateX(-100%);transition:transform .4s cubic-bezier(.4,0,.2,1),width .3s ease;width:100%;z-index:1001}.faculty-sidebar.mobile-visible{box-shadow:8px 0 25px #0000004d;transform:translateX(0)}.faculty-sidebar.collapsed{max-width:80px;width:80px}.faculty-sidebar.collapsed.mobile-visible{transform:translateX(0)}.sidebar-header-faculty{align-items:center;background:#2b77ad;background:var(--primary-blue);border-bottom:none;box-shadow:0 2px 10px #0000001a;color:#fff;display:flex;justify-content:space-between;min-height:70px;padding:20px 16px;padding:var(--space-5) var(--space-4);padding-top:80px;position:sticky;top:0;transition:all .3s ease;z-index:10}.faculty-sidebar.collapsed .sidebar-header-faculty{align-items:center;flex-direction:column;gap:12px;gap:var(--space-3);justify-content:center;min-height:140px;padding:80px 8px 12px;padding:80px var(--space-2) var(--space-3) var(--space-2)}.sidebar-logo{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff3;border:2px solid #ffffff4d;border-radius:6px;border-radius:var(--radius);box-shadow:0 2px 8px #0003;color:#fff;display:none;font-size:18px;font-weight:800;height:45px;justify-content:center;transition:all .3s ease;width:45px}.faculty-sidebar.collapsed .sidebar-logo{display:flex!important;margin-bottom:0;position:relative;z-index:2}.sidebar-logo:hover{background:#ffffff4d;transform:scale(1.05)}.faculty-title{color:#fff!important;display:block!important;font-size:22px!important;font-weight:700;letter-spacing:.5px;opacity:1!important;text-shadow:0 1px 2px #0000001a;transition:all .3s ease}.faculty-sidebar.collapsed .faculty-title{display:none!important}.collapse-btn-faculty{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff3;border:1px solid #ffffff4d;border-radius:6px;border-radius:var(--radius);color:#fff;cursor:pointer;display:flex!important;font-size:18px;height:40px;justify-content:center;min-width:40px;position:relative;transition:all .3s ease}.collapse-btn-faculty:hover{background:#ffffff4d;transform:scale(1.05)}.faculty-sidebar.collapsed .collapse-btn-faculty{background:#fff3;border:1px solid #ffffff4d;color:#fff;flex-shrink:0;margin-top:8px;margin-top:var(--space-2);position:relative;z-index:1}.faculty-menu{background:#fff;background:var(--white);padding:16px 0;padding:var(--space-4) 0;transition:all .3s ease}.faculty-menu .menu-item{align-items:center;border:1px solid #0000;border-radius:6px;border-radius:var(--radius);color:#212529;color:var(--black);display:flex!important;font-size:16px;gap:12px;gap:var(--space-3);height:auto!important;justify-content:flex-start!important;margin:4px 8px;margin:var(--space-1) var(--space-2);min-height:54px;padding:16px 20px!important;padding:var(--space-4) var(--space-5)!important;text-align:left!important;transition:all .3s ease;width:calc(100% - 16px)!important;width:calc(100% - var(--space-4))!important}.faculty-sidebar.collapsed .faculty-menu .menu-item{border-radius:.75rem;border-radius:var(--radius-lg);height:60px!important;justify-content:center!important;margin:8px;margin:var(--space-2) var(--space-2);padding:12px!important;padding:var(--space-3)!important;position:relative;text-align:center!important;width:60px!important}.faculty-sidebar.collapsed .faculty-menu .menu-item .menu-text{display:none!important}.faculty-sidebar.collapsed .faculty-menu .menu-item:before{font-size:24px!important;margin-right:0}.faculty-menu .menu-item .menu-text{display:inline!important;font-weight:500}.faculty-menu .menu-item:before{font-size:20px!important;margin-right:0;min-width:28px;text-align:center}.faculty-menu .menu-item:hover{background:#f8f9fa;background:var(--light-gray);border-color:#dee2e6;border-color:var(--border-gray);color:#2b77ad;color:var(--primary-blue);transform:none}.faculty-sidebar.collapsed .faculty-menu .menu-item:hover{background:#f8f9fa;background:var(--light-gray);box-shadow:0 4px 12px #0066cc4d;transform:scale(1.05)}.faculty-menu .menu-item.active{background:#2b77ad;background:var(--primary-blue);border-color:#049;border-color:var(--primary-dark);box-shadow:0 2px 8px #0066cc4d;color:#fff}.faculty-menu .menu-item.active:before{color:#fff}.faculty-sidebar.collapsed .faculty-menu .menu-item:hover:after{animation:tooltipFadeIn .2s ease;background:#212529;background:var(--black);border-radius:6px;border-radius:var(--radius);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;box-shadow:var(--shadow-lg);color:#fff;content:attr(data-tooltip);font-size:12px;font-weight:500;left:70px;opacity:.9;padding:8px 12px;padding:var(--space-2) var(--space-3);position:absolute;top:50%;transform:translateY(-50%);white-space:nowrap;z-index:1000}.faculty-content{margin-left:0!important;min-height:calc(100vh - 80px);padding:16px;padding:var(--space-4);padding-top:80px;position:relative;transition:all .3s ease;width:100%}.faculty-sidebar.mobile-visible:before{background:#0009;bottom:0;content:"";left:320px;position:fixed;right:0;top:0;transition:opacity .3s ease;z-index:-1}.faculty-sidebar.collapsed.mobile-visible:before{left:80px}.board-grid{gap:20px;gap:var(--space-5);grid-template-columns:1fr}.board-nav{align-items:stretch;flex-direction:column;gap:16px;gap:var(--space-4)}.board-info{text-align:left}.board-details{justify-content:flex-start}.evaluators-grid{gap:16px;gap:var(--space-4);grid-template-columns:1fr}.project-card{padding:16px;padding:var(--space-4)}.project-header{align-items:flex-start;flex-direction:column;gap:12px;gap:var(--space-3)}.metric{flex-direction:column;gap:8px;gap:var(--space-2);text-align:center}.progress-bar{order:2}.progress-text{min-width:auto;order:3}.content-box{margin-bottom:16px;margin-bottom:var(--space-4);padding:16px;padding:var(--space-4)}.profile-header{flex-direction:column;padding:20px 16px;padding:var(--space-5) var(--space-4);text-align:center}.profile-avatar-container{margin-bottom:20px;margin-bottom:var(--space-5);margin-right:0}.grid-2,.grid-3{grid-template-columns:1fr}.welcome-message{padding:24px 16px;padding:var(--space-6) var(--space-4)}.welcome-message h2{font-size:24px}.notification-panel{left:5%;right:5%;width:90%}.modal{margin:16px;margin:var(--space-4);padding:20px;padding:var(--space-5)}.data-table td,.data-table th{padding:8px 12px;padding:var(--space-2) var(--space-3)}.group-management-options{flex-direction:column;gap:8px;gap:var(--space-2)}.group-management-options .action-button{margin-right:0;width:100%}.messages-container{flex-direction:column;height:auto}.conversations-list{margin-bottom:16px;margin-bottom:var(--space-4);width:100%}.chat-container{min-height:400px}.materials-grid,.upload-controls{grid-template-columns:1fr}.file-card{align-items:flex-start;flex-direction:column}.file-actions{justify-content:space-between;margin-left:0;margin-top:12px;margin-top:var(--space-3);width:100%}.invitation-card,.meeting-card{align-items:flex-start;flex-direction:column}.invite-actions,.meeting-actions{justify-content:space-between;margin-left:0;margin-top:12px;margin-top:var(--space-3);width:100%}.annoucements{grid-template-columns:1fr}}@media (max-width:480px){.mobile-menu-toggle{font-size:18px;height:48px;left:14px;top:14px;width:48px}.faculty-sidebar.collapsed{max-width:70px;width:70px}.faculty-sidebar.collapsed .faculty-menu .menu-item{height:50px!important;width:50px!important}.faculty-sidebar.collapsed .faculty-menu .menu-item:before{font-size:20px!important}.sidebar-logo{font-size:16px!important;height:40px!important;width:40px!important}.faculty-title{font-size:20px!important}.collapse-btn-faculty{font-size:16px!important;height:36px!important;min-width:36px!important}.faculty-content{padding:12px;padding:var(--space-3);padding-top:75px}.content-box{padding:12px;padding:var(--space-3)}.profile-avatar{height:100px;width:100px}.profile-name{font-size:24px}.profile-title{font-size:16px}.welcome-message{padding:20px 12px;padding:var(--space-5) var(--space-3)}.welcome-message h2{font-size:20px}.progress-stats{grid-template-columns:1fr}.stat-card{padding:16px;padding:var(--space-4)}.stat-value{font-size:28px}.notification-panel{left:2.5%;right:2.5%;width:95%}.modal,.notification-panel{padding:16px;padding:var(--space-4)}.modal{margin:12px;margin:var(--space-3)}.profile-grid{gap:16px;gap:var(--space-4);grid-template-columns:1fr}.info-card{padding:16px;padding:var(--space-4)}.field-label{display:block;margin-bottom:4px;margin-bottom:var(--space-1);min-width:auto}.info-content p{align-items:flex-start;flex-direction:column}.metrics-grid{grid-template-columns:1fr}.management-header,.section-header{align-items:flex-start;flex-direction:column;gap:12px;gap:var(--space-3)}.controls,.filter-controls{align-items:stretch;flex-direction:column;width:100%}.search-input{margin-bottom:8px;margin-bottom:var(--space-2);width:100%}.filter-select{width:100%}.board-card{padding:16px;padding:var(--space-4)}.evaluator-card,.project-card{min-width:auto;padding:16px;padding:var(--space-4)}}@media (max-width:320px){.faculty-content{padding:8px;padding:var(--space-2);padding-top:70px}.content-box{padding:12px;padding:var(--space-3)}.action-button{font-size:12px;min-height:34px;padding:8px 12px;padding:var(--space-2) var(--space-3)}.profile-name{font-size:20px}.welcome-message h2{font-size:18px}.stat-value{font-size:24px}.modal{padding:12px;padding:var(--space-3)}.sidebar-logo{font-size:14px!important;height:35px!important;width:35px!important}.faculty-title{font-size:18px!important}}@media (min-width:769px){.mobile-menu-toggle{display:none!important}.faculty-sidebar{background:#fff;background:var(--white);position:fixed;transform:translateX(0);width:260px;width:var(--sidebar-width)}.faculty-sidebar.collapsed{width:70px;width:var(--sidebar-collapsed)}.faculty-content{margin-left:260px;margin-left:var(--sidebar-width);padding:24px;padding:var(--space-6);padding-top:24px;padding-top:var(--space-6)}.faculty-sidebar.collapsed+.faculty-content{margin-left:70px;margin-left:var(--sidebar-collapsed)}.sidebar-header-faculty{background:#fff;background:var(--white);border-bottom:2px solid #dee2e6;border-bottom:2px solid var(--border-gray);color:#212529;color:var(--black);padding:16px;padding:var(--space-4)}.faculty-title{color:#2b77ad!important;color:var(--primary-blue)!important;font-size:18px!important}.collapse-btn-faculty{background:#fff;background:var(--white);border:2px solid #dee2e6;border:2px solid var(--border-gray);color:#6c757d;color:var(--secondary-gray);position:relative}.faculty-sidebar.collapsed .sidebar-header-faculty{align-items:center;flex-direction:column;gap:12px;gap:var(--space-3);justify-content:center;min-height:100px;padding:12px;padding:var(--space-3)}.faculty-sidebar.collapsed .sidebar-logo{background:#2b77ad;background:var(--primary-blue);border-color:#dee2e6;border-color:var(--border-gray);color:#fff;display:flex!important;margin-bottom:0;position:relative;z-index:2}.faculty-sidebar.collapsed .faculty-title{display:none!important}.faculty-sidebar.collapsed .collapse-btn-faculty{background:#fff;background:var(--white);border:2px solid #dee2e6;border:2px solid var(--border-gray);color:#6c757d;color:var(--secondary-gray);flex-shrink:0;margin-top:12px;margin-top:var(--space-3);position:relative;z-index:1}.faculty-sidebar.collapsed .collapse-btn-faculty:hover{background:#f8f9fa;background:var(--light-gray);border-color:#2b77ad;border-color:var(--primary-blue);color:#2b77ad;color:var(--primary-blue)}}.action-button:focus,.faculty-menu .menu-item:focus,button:focus,input:focus,select:focus,textarea:focus{outline:2px solid #2b77ad;outline:2px solid var(--primary-blue);outline-offset:2px}.faculty-sidebar.collapsed .faculty-menu .menu-item:focus:after{background:#212529;background:var(--black);border-radius:6px;border-radius:var(--radius);color:#fff;content:attr(data-tooltip);font-size:12px;left:60px;opacity:.9;padding:8px 12px;padding:var(--space-2) var(--space-3);position:absolute;top:50%;transform:translateY(-50%);white-space:nowrap;z-index:1000}::-webkit-scrollbar{height:6px;width:6px}::-webkit-scrollbar-track{background:#f8f9fa;background:var(--light-gray)}::-webkit-scrollbar-thumb{background:#dee2e6;background:var(--border-gray);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#6c757d;background:var(--secondary-gray)}@media print{.faculty-sidebar,.mobile-menu-toggle,.notification-icon,.notification-panel{display:none!important}.faculty-content{margin-left:0!important;padding:0!important}.content-box{border:1px solid #ccc!important;box-shadow:none!important}}:root{--primary-navy:#1a365d;--primary-blue:#2b77ad;--secondary-blue:#4a90b8;--light-blue:#e6f3ff;--accent-gold:#d4af37;--text-primary:#1a202c;--text-secondary:#4a5568;--text-muted:#718096;--background-white:#fff;--background-light:#f7fafc;--background-gray:#edf2f7;--border-light:#e2e8f0;--border-medium:#cbd5e0;--success-green:#38a169;--warning-orange:#ed8936;--error-red:#e53e3e;--spacing-xs:0.25rem;--spacing-sm:0.5rem;--spacing-md:1rem;--spacing-lg:1.5rem;--spacing-xl:2rem;--spacing-2xl:3rem;--spacing-3xl:4rem;--font-family:"Inter","Segoe UI",-apple-system,BlinkMacSystemFont,sans-serif;--font-size-xs:0.75rem;--font-size-sm:0.875rem;--font-size-base:1rem;--font-size-lg:1.125rem;--font-size-xl:1.25rem;--font-size-2xl:1.5rem;--font-size-3xl:1.875rem;--radius-sm:0.25rem;--radius-md:0.5rem;--radius-lg:0.75rem;--radius-xl:1rem;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;--shadow-lg:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;--shadow-xl:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.materials-container{background:#f7fafc;background:var(--background-light);font-family:Inter,Segoe UI,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--font-family);margin:0 auto;max-width:1200px;min-height:100vh;padding:2rem;padding:var(--spacing-xl)}.upload-section{background:var(--background-white);border:2px solid #e2e8f0;border:2px solid var(--border-light);border-radius:1rem;border-radius:var(--radius-xl);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;box-shadow:var(--shadow-lg);margin-bottom:3rem;margin-bottom:var(--spacing-2xl);overflow:hidden;padding:3rem;padding:var(--spacing-2xl);position:relative}.upload-section:before{background:linear-gradient(90deg,#1a365d,#2b77ad,#d4af37);background:linear-gradient(90deg,var(--primary-navy),var(--primary-blue),var(--accent-gold));content:"";height:4px;left:0;position:absolute;right:0;top:0}.upload-section h2{color:#1a365d;color:var(--primary-navy);font-size:1.5rem;font-size:var(--font-size-2xl);font-weight:700;margin-bottom:var(--spacing-xl);padding-bottom:var(--spacing-md);position:relative;text-align:center}.upload-section h2:after{background:#d4af37;background:var(--accent-gold);border-radius:.25rem;border-radius:var(--radius-sm);bottom:0;content:"";height:3px;left:50%;position:absolute;transform:translateX(-50%);width:80px}.upload-controls{grid-gap:1.5rem;grid-gap:var(--spacing-lg);background:#f7fafc;background:var(--background-light);border:1px solid #e2e8f0;border:1px solid var(--border-light);border-radius:.75rem;border-radius:var(--radius-lg);display:grid;gap:1.5rem;gap:var(--spacing-lg);grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:2rem;margin-bottom:var(--spacing-xl);padding:1.5rem;padding:var(--spacing-lg)}.course-select,.group-select,.semester-select{-webkit-appearance:none;appearance:none;background:#fff;background:var(--background-white);background-image:url("data:image/svg+xml;charset=US-ASCII,<svg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 4 5%27><path fill=%27%234a5568%27 d=%27M2 0L0 2h4zm0 5L0 3h4z%27/></svg>");background-position:right 1rem center;background-position:right var(--spacing-md) center;background-repeat:no-repeat;background-size:12px;border:2px solid #cbd5e0;border:2px solid var(--border-medium);border-radius:.5rem;border-radius:var(--radius-md);color:#1a202c;color:var(--text-primary);cursor:pointer;font-family:Inter,Segoe UI,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--font-family);font-size:1rem;font-size:var(--font-size-base);font-weight:500;padding:1rem 1.5rem;padding:var(--spacing-md) var(--spacing-lg);padding-right:3rem;padding-right:var(--spacing-2xl);position:relative;transition:all .3s ease}.course-select:focus,.group-select:focus,.semester-select:focus{border-color:#2b77ad;border-color:var(--primary-blue);box-shadow:0 0 0 3px #2b77ad1a;outline:none;transform:translateY(-1px)}.course-select:hover,.group-select:hover,.semester-select:hover{border-color:#4a90b8;border-color:var(--secondary-blue);transform:translateY(-1px)}.course-select:hover,.file-upload-button,.group-select:hover,.semester-select:hover{box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;box-shadow:var(--shadow-md)}.file-upload-button{align-items:center;background:linear-gradient(135deg,#1a365d,#2b77ad);background:linear-gradient(135deg,var(--primary-navy) 0,var(--primary-blue) 100%);border:none;border-radius:.5rem;border-radius:var(--radius-md);color:#fff;color:var(--background-white);cursor:pointer;display:flex;font-family:Inter,Segoe UI,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--font-family);font-size:1rem;font-size:var(--font-size-base);font-weight:600;gap:.5rem;gap:var(--spacing-sm);justify-content:center;letter-spacing:.5px;overflow:hidden;padding:1rem 2rem;padding:var(--spacing-md) var(--spacing-xl);position:relative;text-transform:uppercase;transition:all .3s ease}.file-upload-button:before{content:"📁";font-size:1.125rem;font-size:var(--font-size-lg);margin-right:.5rem;margin-right:var(--spacing-sm)}.file-upload-button:hover{background:linear-gradient(135deg,#2b77ad,#4a90b8);background:linear-gradient(135deg,var(--primary-blue) 0,var(--secondary-blue) 100%);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;box-shadow:var(--shadow-lg);transform:translateY(-2px)}.file-upload-button:active{box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;box-shadow:var(--shadow-md);transform:translateY(0)}.supported-files{background:#e6f3ff;background:var(--light-blue);border:1px dashed #2b77ad;border:1px dashed var(--primary-blue);border-radius:.5rem;border-radius:var(--radius-md);color:#718096;color:var(--text-muted);font-size:.875rem;font-size:var(--font-size-sm);font-style:italic;margin-top:1.5rem;margin-top:var(--spacing-lg);padding:1rem;padding:var(--spacing-md);text-align:center}.materials-list{background:#fff;background:var(--background-white);border:2px solid #e2e8f0;border:2px solid var(--border-light);border-radius:1rem;border-radius:var(--radius-xl);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;box-shadow:var(--shadow-lg);padding:3rem;padding:var(--spacing-2xl)}.list-header{align-items:center;border-bottom:2px solid #edf2f7;border-bottom:2px solid var(--background-gray);display:flex;flex-wrap:wrap;gap:1.5rem;gap:var(--spacing-lg);justify-content:space-between;margin-bottom:2rem;margin-bottom:var(--spacing-xl);padding-bottom:1.5rem;padding-bottom:var(--spacing-lg)}.list-header h3{color:#1a365d;color:var(--primary-navy);flex:1 1;font-size:1.25rem;font-size:var(--font-size-xl);font-weight:700;margin:0;min-width:200px}.filter-controls{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;gap:var(--spacing-md)}.filter-controls .search-input{background:#fff;background:var(--background-white);border:2px solid #cbd5e0;border:2px solid var(--border-medium);border-radius:.5rem;border-radius:var(--radius-md);color:#1a202c;color:var(--text-primary);font-family:Inter,Segoe UI,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--font-family);font-size:.875rem;font-size:var(--font-size-sm);min-width:250px;padding:.5rem 1rem;padding:var(--spacing-sm) var(--spacing-md);transition:all .3s ease}.filter-controls .search-input:focus{border-color:#2b77ad;border-color:var(--primary-blue);box-shadow:0 0 0 3px #2b77ad1a;outline:none;transform:translateY(-1px)}.filter-controls .search-input::placeholder{color:#718096;color:var(--text-muted);font-style:italic}.filter-controls .filter-select{-webkit-appearance:none;appearance:none;background:#fff;background:var(--background-white);background-image:url("data:image/svg+xml;charset=US-ASCII,<svg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 4 5%27><path fill=%27%234a5568%27 d=%27M2 0L0 2h4zm0 5L0 3h4z%27/></svg>");background-position:right .5rem center;background-position:right var(--spacing-sm) center;background-repeat:no-repeat;background-size:10px;border:2px solid #cbd5e0;border:2px solid var(--border-medium);border-radius:.5rem;border-radius:var(--radius-md);color:#1a202c;color:var(--text-primary);cursor:pointer;font-family:Inter,Segoe UI,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--font-family);font-size:.875rem;font-size:var(--font-size-sm);min-width:150px;padding:.5rem 1.5rem;padding:var(--spacing-sm) var(--spacing-lg);padding-right:2rem;padding-right:var(--spacing-xl);transition:all .3s ease}.filter-controls .filter-select:focus{border-color:#2b77ad;border-color:var(--primary-blue);box-shadow:0 0 0 3px #2b77ad1a;outline:none}.materials-grid{grid-gap:2rem;grid-gap:var(--spacing-xl);gap:2rem;gap:var(--spacing-xl);grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.file-card{align-items:center;background:#fff;background:var(--background-white);border:2px solid #e2e8f0;border:2px solid var(--border-light);border-radius:.75rem;border-radius:var(--radius-lg);box-shadow:0 1px 2px 0 #0000000d;box-shadow:var(--shadow-sm);display:flex;gap:1.5rem;gap:var(--spacing-lg);overflow:hidden;padding:1.5rem;padding:var(--spacing-lg);position:relative;transition:all .3s ease}.file-card:before{background:linear-gradient(90deg,#2b77ad,#d4af37);background:linear-gradient(90deg,var(--primary-blue),var(--accent-gold));content:"";height:4px;left:0;position:absolute;top:0;transform:scaleX(0);transition:transform .3s ease;width:100%}.file-card:hover{border-color:#2b77ad;border-color:var(--primary-blue);box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;box-shadow:var(--shadow-xl);transform:translateY(-4px)}.file-card:hover:before{transform:scaleX(1)}.file-icon{align-items:center;background:#e6f3ff;background:var(--light-blue);border-radius:50%;color:#2b77ad;color:var(--primary-blue);display:flex;font-size:3rem;height:80px;justify-content:center;padding:1.5rem;padding:var(--spacing-lg);position:relative;transition:all .3s ease;width:80px}.file-card:hover .file-icon{background:#2b77ad33;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;box-shadow:var(--shadow-md);transform:scale(1.1)}.file-details{min-width:0}.file-details h4{color:#1a202c;color:var(--text-primary);font-size:1.125rem;font-size:var(--font-size-lg);font-weight:600;line-height:1.4;margin:0 0 1rem;margin:0 0 var(--spacing-md) 0;word-break:break-word}.file-meta{display:flex;flex-wrap:wrap;gap:.5rem;gap:var(--spacing-sm);margin-bottom:1.5rem;margin-bottom:var(--spacing-lg)}.file-meta span{background:#edf2f7;background:var(--background-gray);border:1px solid #e2e8f0;border:1px solid var(--border-light);border-radius:.25rem;border-radius:var(--radius-sm);color:#4a5568;color:var(--text-secondary);font-size:.75rem;font-size:var(--font-size-xs);font-weight:500;letter-spacing:.5px;padding:.25rem .5rem;padding:var(--spacing-xs) var(--spacing-sm);text-transform:uppercase}.file-actions{display:flex;flex-direction:column;flex-shrink:0;gap:.5rem;gap:var(--spacing-sm)}.file-actions .action-button{border:none;border-radius:.25rem;border-radius:var(--radius-sm);cursor:pointer;font-family:Inter,Segoe UI,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--font-family);font-size:.75rem;font-size:var(--font-size-xs);font-weight:600;letter-spacing:.5px;min-width:80px;overflow:hidden;padding:.5rem 1rem;padding:var(--spacing-sm) var(--spacing-md);position:relative;text-align:center;text-transform:uppercase;transition:all .3s ease}.file-actions .view-button{background:#2b77ad;background:var(--primary-blue);box-shadow:0 1px 2px 0 #0000000d;box-shadow:var(--shadow-sm);color:#fff;color:var(--background-white)}.file-actions .view-button:hover{background:#1a365d;background:var(--primary-navy);box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;box-shadow:var(--shadow-md);transform:translateY(-1px)}.file-actions .download-button{background:#38a169;background:var(--success-green);box-shadow:0 1px 2px 0 #0000000d;box-shadow:var(--shadow-sm);color:#fff;color:var(--background-white)}.file-actions .download-button:hover{background:#2f855a;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;box-shadow:var(--shadow-md);transform:translateY(-1px)}.file-actions .delete-button{background:#e53e3e;background:var(--error-red);box-shadow:0 1px 2px 0 #0000000d;box-shadow:var(--shadow-sm);color:#fff;color:var(--background-white)}.file-actions .delete-button:hover{background:#c53030;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;box-shadow:var(--shadow-md);transform:translateY(-1px)}.materials-grid:empty:after{background:#f7fafc;background:var(--background-light);border:2px dashed #cbd5e0;border:2px dashed var(--border-medium);border-radius:.75rem;border-radius:var(--radius-lg);color:#718096;color:var(--text-muted);content:"📁 No materials uploaded yet. Upload your first file to get started.";font-size:1.125rem;font-size:var(--font-size-lg);font-style:italic;grid-column:1/-1;padding:4rem;padding:var(--spacing-3xl);text-align:center}.file-upload-button.uploading{animation:pulse 2s infinite;background:#718096;background:var(--text-muted);cursor:not-allowed}.file-upload-button.uploading:before{animation:spin 1s linear infinite;content:"⏳"}.upload-section.drag-over{background:#e6f3ff;background:var(--light-blue);border-color:#2b77ad;border-color:var(--primary-blue);transform:scale(1.02)}.upload-section.drag-over:before{animation:shimmer 2s infinite;height:6px}@keyframes shimmer{0%,to{opacity:.5}50%{opacity:1}}@media (max-width:1024px){.materials-container{padding:1.5rem;padding:var(--spacing-lg)}.materials-list,.upload-section{padding:2rem;padding:var(--spacing-xl)}.materials-grid{gap:1.5rem;gap:var(--spacing-lg);grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}}@media (max-width:768px){.materials-container{padding:1rem;padding:var(--spacing-md)}.upload-section{padding:1.5rem;padding:var(--spacing-lg)}.upload-section h2{font-size:1.25rem;font-size:var(--font-size-xl)}.upload-controls{gap:1rem;gap:var(--spacing-md);grid-template-columns:1fr}.materials-list{padding:1.5rem;padding:var(--spacing-lg)}.list-header{gap:1rem;gap:var(--spacing-md)}.filter-controls,.list-header{align-items:stretch;flex-direction:column}.filter-controls .filter-select,.filter-controls .search-input{min-width:auto;width:100%}.materials-grid{gap:1rem;gap:var(--spacing-md);grid-template-columns:1fr}.file-card{flex-direction:column;padding:1.5rem;padding:var(--spacing-lg);text-align:center}.file-icon{align-self:center;margin-bottom:1rem;margin-bottom:var(--spacing-md)}.file-actions{flex-direction:row;gap:.5rem;gap:var(--spacing-sm);justify-content:center;width:100%}.file-actions .action-button{flex:1 1;min-width:70px}}@media (max-width:480px){.materials-container{padding:.5rem;padding:var(--spacing-sm)}.upload-section{padding:1rem;padding:var(--spacing-md)}.upload-section h2{font-size:1.125rem;font-size:var(--font-size-lg)}.file-card,.file-icon,.materials-list{padding:1rem;padding:var(--spacing-md)}.file-icon{font-size:2rem;height:60px;width:60px}.file-details h4{font-size:1rem;font-size:var(--font-size-base)}.file-actions{flex-direction:column;gap:.25rem;gap:var(--spacing-xs)}.file-actions .action-button{font-size:.75rem;font-size:var(--font-size-xs);padding:.5rem;padding:var(--spacing-sm);width:100%}}@media (max-width:320px){.upload-controls{gap:.5rem;gap:var(--spacing-sm)}.course-select,.file-upload-button,.group-select,.semester-select{font-size:.875rem;font-size:var(--font-size-sm);padding:.5rem 1rem;padding:var(--spacing-sm) var(--spacing-md)}.materials-grid{gap:.5rem;gap:var(--spacing-sm)}}.course-select:focus,.file-actions .action-button:focus,.file-upload-button:focus,.filter-controls .filter-select:focus,.filter-controls .search-input:focus,.group-select:focus,.semester-select:focus{outline:2px solid #2b77ad;outline:2px solid var(--primary-blue);outline-offset:2px}@media (prefers-contrast:high){.file-card{border-width:3px}.file-upload-button{border:2px solid #1a365d;border:2px solid var(--primary-navy)}}@media print{.file-actions,.file-upload-button,.filter-controls{display:none!important}.file-card{border:1px solid #000!important;box-shadow:none!important}}:root{--msg-primary:#06c;--msg-primary-dark:#049;--msg-secondary:#6c757d;--msg-light-bg:#f8f9fa;--msg-white:#fff;--msg-border:#e9ecef;--msg-border-light:#f0f0f0;--msg-text-dark:#1a1a1a;--msg-text-muted:#6c757d;--msg-success:#28a745;--msg-danger:#dc3545;--msg-warning:#ffc107;--msg-blue-light:#e3f2fd;--msg-text-xs:10px;--msg-text-sm:12px;--msg-text-base:14px;--msg-text-lg:16px;--msg-text-xl:18px;--msg-text-2xl:20px;--msg-text-3xl:24px;--msg-space-1:4px;--msg-space-2:8px;--msg-space-3:12px;--msg-space-4:16px;--msg-space-5:20px;--msg-space-6:24px;--msg-space-8:32px;--msg-space-10:40px;--msg-sidebar-width:380px;--msg-sidebar-width-tablet:320px;--msg-sidebar-width-mobile:100%;--msg-radius-sm:6px;--msg-radius-md:8px;--msg-radius-lg:12px;--msg-radius-xl:16px;--msg-radius-2xl:20px;--msg-radius-full:50%;--msg-shadow-sm:0 1px 2px #0000000d;--msg-shadow-md:0 4px 6px #0000001a;--msg-shadow-lg:0 10px 15px #0000001a;--msg-shadow-xl:0 20px 25px #00000026;--msg-z-base:1;--msg-z-sticky:10;--msg-z-modal:1000;--msg-container-height:100vh;--msg-mobile-height:calc(100vh - 60px);--msg-mobile-panel-height:45vh;--msg-mobile-chat-height:55vh}*,:after,:before{box-sizing:border-box;margin:0;padding:0}.messages-container{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:#1a1a1a;color:var(--msg-text-dark);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;line-height:1.5}.msg-messages-wrapper{background:#f8f9fa;background:var(--msg-light-bg);border:1px solid #e9ecef;border:1px solid var(--msg-border);border-radius:12px;border-radius:var(--msg-radius-lg);box-shadow:0 10px 15px #0000001a;box-shadow:var(--msg-shadow-lg);display:flex;font-family:inherit;height:100vh;height:var(--msg-container-height);max-height:800px;overflow:hidden;position:relative}.msg-conversations-panel{border-right:1px solid #e9ecef;border-right:1px solid var(--msg-border);display:flex;flex-direction:column;min-width:280px;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1);width:380px;width:var(--msg-sidebar-width);z-index:1;z-index:var(--msg-z-base)}.msg-conversations-panel,.msg-header{background:#fff;background:var(--msg-white)}.msg-header{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background-color:#fffffff2;border-bottom:1px solid #f0f0f0;border-bottom:1px solid var(--msg-border-light);padding:20px;padding:var(--msg-space-5);position:sticky;top:0;z-index:10;z-index:var(--msg-z-sticky)}.msg-header-top{align-items:center;display:flex;gap:12px;gap:var(--msg-space-3);justify-content:space-between;margin-bottom:16px;margin-bottom:var(--msg-space-4)}.msg-header h2{color:#1a1a1a;color:var(--msg-text-dark);font-size:24px;font-size:var(--msg-text-3xl);font-weight:700;letter-spacing:-.025em;line-height:1.2;margin:0}.msg-header-actions{display:flex;flex-shrink:0;gap:8px;gap:var(--msg-space-2)}.msg-compose-button{align-items:center;background:linear-gradient(135deg,#06c,#049);background:linear-gradient(135deg,var(--msg-primary),var(--msg-primary-dark));border:none;border-radius:8px;border-radius:var(--msg-radius-md);box-shadow:0 4px 6px #0000001a;box-shadow:var(--msg-shadow-md);color:#fff;cursor:pointer;display:inline-flex;font-size:14px;font-size:var(--msg-text-base);font-weight:500;gap:8px;gap:var(--msg-space-2);min-height:44px;padding:12px 16px;padding:var(--msg-space-3) var(--msg-space-4);text-decoration:none;transition:all .3s ease;-webkit-user-select:none;user-select:none;white-space:nowrap}.msg-compose-button:hover{background:linear-gradient(135deg,#049,#036);background:linear-gradient(135deg,var(--msg-primary-dark),#036);box-shadow:0 10px 15px #0000001a;box-shadow:var(--msg-shadow-lg);transform:translateY(-2px)}.msg-compose-button:active{box-shadow:0 1px 2px #0000000d;box-shadow:var(--msg-shadow-sm);transform:translateY(0)}.msg-icon{flex-shrink:0;font-size:16px;font-size:var(--msg-text-lg)}.msg-search-filter{display:flex;flex-direction:column;gap:12px;gap:var(--msg-space-3)}.msg-search-box{align-items:center;display:flex;position:relative}.msg-search-icon{color:#6c757d;color:var(--msg-text-muted);font-size:16px;font-size:var(--msg-text-lg);left:12px;left:var(--msg-space-3);pointer-events:none;position:absolute;z-index:1}.msg-search-field{background:#f8f9fa;background:var(--msg-light-bg);border:1px solid #e9ecef;border:1px solid var(--msg-border);border-radius:8px;border-radius:var(--msg-radius-md);font-family:inherit;font-size:14px;font-size:var(--msg-text-base);min-height:44px;outline:none;padding:12px 12px 12px 40px;padding:var(--msg-space-3) var(--msg-space-3) var(--msg-space-3) var(--msg-space-10);transition:all .3s ease;width:100%}.msg-search-field:focus{background:#fff;background:var(--msg-white);border-color:#06c;border-color:var(--msg-primary);box-shadow:0 0 0 3px #0066cc1a}.msg-search-field::placeholder{color:#6c757d;color:var(--msg-text-muted);opacity:.7}.msg-filter-tabs{background:#f8f9fa;background:var(--msg-light-bg);border:1px solid #e9ecef;border:1px solid var(--msg-border);border-radius:8px;border-radius:var(--msg-radius-md);display:flex;gap:2px;padding:4px;padding:var(--msg-space-1)}.msg-filter-tab{align-items:center;background:#0000;border:none;border-radius:6px;border-radius:var(--msg-radius-sm);color:#6c757d;color:var(--msg-text-muted);cursor:pointer;display:flex;flex:1 1;font-size:12px;font-size:var(--msg-text-sm);font-weight:500;justify-content:center;min-height:36px;padding:8px 12px;padding:var(--msg-space-2) var(--msg-space-3);transition:all .3s ease;-webkit-user-select:none;user-select:none;white-space:nowrap}.msg-filter-tab.msg-active{background:#fff;background:var(--msg-white);box-shadow:0 1px 2px #0000000d;box-shadow:var(--msg-shadow-sm);color:#06c;color:var(--msg-primary);font-weight:600}.msg-filter-tab:hover:not(.msg-active){background:#ffffffb3;color:#1a1a1a;color:var(--msg-text-dark)}.msg-conversations-list{flex:1 1;overflow-y:auto;padding:0 8px;padding:0 var(--msg-space-2);scrollbar-color:#e9ecef #0000;scrollbar-color:var(--msg-border) #0000;scrollbar-width:thin}.msg-conversation-item{align-items:flex-start;border-left:3px solid #0000;border-radius:12px;border-radius:var(--msg-radius-lg);cursor:pointer;display:flex;margin:4px 0;margin:var(--msg-space-1) 0;min-height:80px;padding:16px 12px;padding:var(--msg-space-4) var(--msg-space-3);position:relative;transition:all .3s ease;-webkit-user-select:none;user-select:none}.msg-conversation-item:hover{background:#f8f9fa;background:var(--msg-light-bg);box-shadow:0 1px 2px #0000000d;box-shadow:var(--msg-shadow-sm);transform:translateX(2px)}.msg-conversation-item.msg-active{background:linear-gradient(135deg,#e3f2fd,#f0f8ff);background:linear-gradient(135deg,var(--msg-blue-light),#f0f8ff);border-left-color:#06c;border-left-color:var(--msg-primary);box-shadow:0 4px 6px #0000001a;box-shadow:var(--msg-shadow-md)}.msg-conversation-item.msg-high{border-left-color:#ffc107;border-left-color:var(--msg-warning)}.msg-conversation-item.msg-urgent{background:linear-gradient(135deg,#fff5f5,#ffe6e6);border-left-color:#dc3545;border-left-color:var(--msg-danger)}.msg-conversation-avatar{flex-shrink:0;margin-right:12px;margin-right:var(--msg-space-3);position:relative}.msg-avatar-icon{align-items:center;background:linear-gradient(135deg,#f8f9fa,#e9ecef);background:linear-gradient(135deg,var(--msg-light-bg),var(--msg-border));border:2px solid #fff;border:2px solid var(--msg-white);border-radius:50%;border-radius:var(--msg-radius-full);box-shadow:0 4px 6px #0000001a;box-shadow:var(--msg-shadow-md);color:#6c757d;color:var(--msg-text-muted);display:flex;font-size:18px;font-size:var(--msg-text-xl);font-weight:600;height:52px;justify-content:center;width:52px}.msg-online-dot{animation:msg-pulse 2s infinite;background:#28a745;background:var(--msg-success);border:3px solid #fff;border:3px solid var(--msg-white);border-radius:50%;border-radius:var(--msg-radius-full);bottom:2px;height:14px;position:absolute;right:2px;width:14px}@keyframes msg-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.1)}}.msg-priority-badge{align-items:center;animation:msg-bounce 1s infinite;background:#dc3545;background:var(--msg-danger);border-radius:50%;border-radius:var(--msg-radius-full);box-shadow:0 4px 6px #0000001a;box-shadow:var(--msg-shadow-md);color:#fff;display:flex;font-size:10px;font-size:var(--msg-text-xs);font-weight:700;height:20px;justify-content:center;position:absolute;right:-4px;top:-4px;width:20px}@keyframes msg-bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-4px)}60%{transform:translateY(-2px)}}.msg-conversation-body{flex:1 1;min-width:0}.msg-conversation-header{align-items:center;display:flex;gap:12px;gap:var(--msg-space-3);justify-content:space-between;margin-bottom:4px;margin-bottom:var(--msg-space-1)}.msg-conversation-title{color:#1a1a1a;color:var(--msg-text-dark);font-size:16px;font-size:var(--msg-text-lg);font-weight:600;line-height:1.3;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.msg-timestamp{color:#6c757d;color:var(--msg-text-muted);flex-shrink:0;font-size:10px;font-size:var(--msg-text-xs);font-weight:400;margin-left:12px;margin-left:var(--msg-space-3);white-space:nowrap}.msg-conversation-preview{display:flex;flex-direction:column;gap:4px;gap:var(--msg-space-1)}.msg-last-message{color:#6c757d;color:var(--msg-text-muted);font-size:14px;font-size:var(--msg-text-base);line-height:1.4;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.msg-conversation-meta{align-items:center;display:flex;flex-wrap:wrap;gap:8px;gap:var(--msg-space-2);margin-top:4px;margin-top:var(--msg-space-1)}.msg-participants-count{background:#f8f9fa;background:var(--msg-light-bg);border:1px solid #e9ecef;border:1px solid var(--msg-border);border-radius:20px;border-radius:var(--msg-radius-2xl);color:#1a1a1a;color:var(--msg-text-dark)}.msg-department-tag,.msg-participants-count{font-size:10px;font-size:var(--msg-text-xs);font-weight:500;padding:2px 8px;padding:2px var(--msg-space-2)}.msg-department-tag{background:#e3f2fd;background:var(--msg-blue-light);border:1px solid #06c3;border-radius:20px;border-radius:var(--msg-radius-2xl);color:#06c;color:var(--msg-primary)}.msg-conversation-indicators{align-items:flex-end;display:flex;flex-direction:column;flex-shrink:0;gap:4px;gap:var(--msg-space-1);margin-left:12px;margin-left:var(--msg-space-3)}.msg-unread-count{background:#06c;background:var(--msg-primary);border-radius:20px;border-radius:var(--msg-radius-2xl);box-shadow:0 4px 6px #0000001a;box-shadow:var(--msg-shadow-md);color:#fff;font-size:10px;font-size:var(--msg-text-xs);font-weight:600;line-height:1;min-width:22px;padding:4px 8px;padding:var(--msg-space-1) var(--msg-space-2);text-align:center}.msg-status-indicators{display:flex;gap:4px;gap:var(--msg-space-1)}.msg-priority-dot{font-size:12px;font-size:var(--msg-text-sm)}.msg-priority-dot.msg-high{color:#ffc107;color:var(--msg-warning);filter:drop-shadow(0 0 2px rgba(255,193,7,.5))}.msg-priority-dot.msg-urgent{color:#dc3545;color:var(--msg-danger);filter:drop-shadow(0 0 2px rgba(220,53,69,.5))}.msg-chat-panel{flex:1 1;flex-direction:column;min-width:0}.msg-chat-header,.msg-chat-panel{background:#fff;background:var(--msg-white);display:flex}.msg-chat-header{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background-color:#fffffff2;border-bottom:1px solid #f0f0f0;border-bottom:1px solid var(--msg-border-light);box-shadow:0 1px 2px #0000000d;box-shadow:var(--msg-shadow-sm);justify-content:space-between;padding:20px 24px;padding:var(--msg-space-5) var(--msg-space-6);position:sticky;top:0;z-index:10;z-index:var(--msg-z-sticky)}.msg-participant-info{align-items:center;display:flex;gap:16px;gap:var(--msg-space-4);min-width:0}.msg-participant-avatar{flex-shrink:0;position:relative}.msg-participant-avatar span{align-items:center;background:linear-gradient(135deg,#f8f9fa,#e9ecef);background:linear-gradient(135deg,var(--msg-light-bg),var(--msg-border));border-radius:50%;border-radius:var(--msg-radius-full);box-shadow:0 4px 6px #0000001a;box-shadow:var(--msg-shadow-md);color:#6c757d;color:var(--msg-text-muted);display:flex;font-size:20px;font-size:var(--msg-text-2xl);font-weight:600;height:56px;justify-content:center;width:56px}.msg-online-status,.msg-participant-avatar span{border:3px solid #fff;border:3px solid var(--msg-white)}.msg-online-status{background:#28a745;background:var(--msg-success);border-radius:50%;border-radius:var(--msg-radius-full);bottom:2px;box-shadow:0 1px 2px #0000000d;box-shadow:var(--msg-shadow-sm);height:16px;position:absolute;right:2px;width:16px}.msg-participant-details{min-width:0}.msg-participant-details h3{color:#1a1a1a;color:var(--msg-text-dark);font-size:20px;font-size:var(--msg-text-2xl);font-weight:700;line-height:1.2;margin:0 0 4px;margin:0 0 var(--msg-space-1) 0}.msg-participant-details h3,.msg-participant-status{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.msg-participant-status{color:#6c757d;color:var(--msg-text-muted);font-size:14px;font-size:var(--msg-text-base);font-weight:400;margin:0}.msg-chat-actions{display:flex;flex-shrink:0;gap:8px;gap:var(--msg-space-2)}.msg-action-button{align-items:center;background:#f8f9fa;background:var(--msg-light-bg);border:1px solid #e9ecef;border:1px solid var(--msg-border);border-radius:50%;border-radius:var(--msg-radius-full);color:#6c757d;color:var(--msg-text-muted);cursor:pointer;display:flex;font-size:18px;font-size:var(--msg-text-xl);height:48px;justify-content:center;transition:all .3s ease;width:48px}.msg-action-button:hover{background:#e9ecef;background:var(--msg-border);box-shadow:0 4px 6px #0000001a;box-shadow:var(--msg-shadow-md);color:#1a1a1a;color:var(--msg-text-dark);transform:translateY(-1px)}.msg-action-button:active{box-shadow:0 1px 2px #0000000d;box-shadow:var(--msg-shadow-sm);transform:translateY(0)}.msg-messages-area{background:linear-gradient(135deg,#fafbfc,#f8f9fa);background:linear-gradient(135deg,#fafbfc,var(--msg-light-bg));flex:1 1;overflow-y:auto;padding:24px;padding:var(--msg-space-6);scrollbar-color:#e9ecef #0000;scrollbar-color:var(--msg-border) #0000;scrollbar-width:thin}.msg-date-divider{margin:24px 0;margin:var(--msg-space-6) 0;position:relative;text-align:center}.msg-date-divider:before{background:linear-gradient(90deg,#0000,#e9ecef,#0000);background:linear-gradient(90deg,#0000,var(--msg-border),#0000);content:"";height:1px;left:0;position:absolute;right:0;top:50%}.msg-date-divider span{background:#fff;background:var(--msg-white);border:1px solid #e9ecef;border:1px solid var(--msg-border);border-radius:20px;border-radius:var(--msg-radius-2xl);color:#6c757d;color:var(--msg-text-muted);font-size:12px;font-size:var(--msg-text-sm);font-weight:500;padding:8px 16px;padding:var(--msg-space-2) var(--msg-space-4);position:relative;z-index:1}.msg-message-wrapper{animation:msg-fadeInUp .3s ease;display:flex;margin-bottom:16px;margin-bottom:var(--msg-space-4)}@keyframes msg-fadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.msg-message-wrapper.msg-sent{justify-content:flex-end}.msg-message-wrapper.msg-received{justify-content:flex-start}.msg-message-bubble{max-width:75%;min-width:120px;position:relative}.msg-message-wrapper.msg-sent .msg-message-bubble{background:linear-gradient(135deg,#06c,#049);background:linear-gradient(135deg,var(--msg-primary),var(--msg-primary-dark));border-radius:16px 16px 4px 16px;border-radius:var(--msg-radius-xl) var(--msg-radius-xl) var(--msg-space-1) var(--msg-radius-xl);box-shadow:0 4px 6px #0000001a;box-shadow:var(--msg-shadow-md);color:#fff}.msg-message-wrapper.msg-received .msg-message-bubble{background:#fff;background:var(--msg-white);border:1px solid #f0f0f0;border:1px solid var(--msg-border-light);border-radius:16px 16px 16px 4px;border-radius:var(--msg-radius-xl) var(--msg-radius-xl) var(--msg-radius-xl) var(--msg-space-1);box-shadow:0 4px 6px #0000001a;box-shadow:var(--msg-shadow-md);color:#1a1a1a;color:var(--msg-text-dark)}.msg-message-sender{align-items:center;display:flex;gap:8px;gap:var(--msg-space-2);margin-bottom:8px;margin-bottom:var(--msg-space-2);padding:0 16px;padding:0 var(--msg-space-4);padding-top:12px;padding-top:var(--msg-space-3)}.msg-sender-avatar,.msg-sender-name{font-size:14px;font-size:var(--msg-text-base)}.msg-sender-name{font-weight:600}.msg-mention-badge,.msg-sender-name{color:#1a1a1a;color:var(--msg-text-dark)}.msg-mention-badge{background:#ffc107;background:var(--msg-warning);border-radius:20px;border-radius:var(--msg-radius-2xl);font-size:10px;font-size:var(--msg-text-xs);font-weight:500;padding:2px 8px;padding:2px var(--msg-space-2)}.msg-message-content{padding:12px 16px;padding:var(--msg-space-3) var(--msg-space-4)}.msg-important-flag{align-items:center;color:#ffc107;color:var(--msg-warning);display:flex;font-size:12px;font-size:var(--msg-text-sm);font-weight:600;gap:4px;gap:var(--msg-space-1);margin-bottom:8px;margin-bottom:var(--msg-space-2)}.msg-message-text{word-wrap:break-word;font-size:14px;font-size:var(--msg-text-base);line-height:1.5;margin:0;white-space:pre-wrap}.msg-message-wrapper.msg-sent .msg-message-text{color:#fffffff2}.msg-attachments{flex-direction:column;margin-top:12px;margin-top:var(--msg-space-3)}.msg-attachment,.msg-attachments{display:flex;gap:8px;gap:var(--msg-space-2)}.msg-attachment{align-items:center;background:#ffffff1a;border:1px solid #fff3;border-radius:8px;border-radius:var(--msg-radius-md);padding:8px 12px;padding:var(--msg-space-2) var(--msg-space-3);transition:all .3s ease}.msg-attachment:hover{background:#fff3}.msg-message-wrapper.msg-received .msg-attachment{background:#f8f9fa;background:var(--msg-light-bg);border:1px solid #e9ecef;border:1px solid var(--msg-border)}.msg-message-wrapper.msg-received .msg-attachment:hover{background:#e9ecef}.msg-file-icon{flex-shrink:0;font-size:16px;font-size:var(--msg-text-lg)}.msg-file-name{flex:1 1;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.msg-download-button,.msg-file-name{font-size:14px;font-size:var(--msg-text-base)}.msg-download-button{background:#0000;border:none;border-radius:6px;border-radius:var(--msg-radius-sm);color:inherit;cursor:pointer;opacity:.7;padding:4px;padding:var(--msg-space-1);transition:all .3s ease}.msg-download-button:hover{background:#ffffff1a;opacity:1}.msg-message-footer{align-items:center;display:flex;gap:8px;gap:var(--msg-space-2);justify-content:space-between;margin-top:8px;margin-top:var(--msg-space-2);padding:0 12px;padding:0 var(--msg-space-3);padding-bottom:12px;padding-bottom:var(--msg-space-3)}.msg-message-time{font-size:10px;font-size:var(--msg-text-xs);font-weight:400;opacity:.7}.msg-message-status{align-items:center;display:flex;font-size:12px;font-size:var(--msg-text-sm);gap:4px;gap:var(--msg-space-1);opacity:.8}.msg-message-status.msg-read{color:#28a745;color:var(--msg-success)}.msg-message-status.msg-delivered{color:#6c757d;color:var(--msg-text-muted)}.msg-message-status.msg-sent{color:#ffc107;color:var(--msg-warning)}.msg-reactions{display:flex;flex-wrap:wrap;gap:4px;gap:var(--msg-space-1);margin-top:8px;margin-top:var(--msg-space-2);padding:0 12px;padding:0 var(--msg-space-3)}.msg-reaction{background:#ffffff1a;border:1px solid #fff3;border-radius:20px;border-radius:var(--msg-radius-2xl);cursor:pointer;font-size:12px;font-size:var(--msg-text-sm);padding:4px 8px;padding:var(--msg-space-1) var(--msg-space-2);transition:all .3s ease;-webkit-user-select:none;user-select:none}.msg-message-wrapper.msg-received .msg-reaction{background:#f8f9fa;background:var(--msg-light-bg);border:1px solid #e9ecef;border:1px solid var(--msg-border)}.msg-reaction:hover{background:#fff3;transform:scale(1.05)}.msg-add-reaction{background:#0000;border:1px dashed #ffffff4d;border-radius:20px;border-radius:var(--msg-radius-2xl);color:inherit;cursor:pointer;font-size:12px;font-size:var(--msg-text-sm);opacity:.7;padding:4px 8px;padding:var(--msg-space-1) var(--msg-space-2);transition:all .3s ease;-webkit-user-select:none;user-select:none}.msg-message-wrapper.msg-received .msg-add-reaction{border:1px dashed #e9ecef;border:1px dashed var(--msg-border);color:#6c757d;color:var(--msg-text-muted)}.msg-add-reaction:hover{opacity:1;transform:scale(1.05)}.msg-typing-indicator{align-items:center;background:#f8f9fa;background:var(--msg-light-bg);border:1px solid #e9ecef;border:1px solid var(--msg-border);border-radius:16px 16px 16px 4px;border-radius:var(--msg-radius-xl) var(--msg-radius-xl) var(--msg-radius-xl) var(--msg-space-1);box-shadow:0 1px 2px #0000000d;box-shadow:var(--msg-shadow-sm);display:flex;gap:8px;gap:var(--msg-space-2);margin-bottom:16px;margin-bottom:var(--msg-space-4);max-width:200px;padding:12px 16px;padding:var(--msg-space-3) var(--msg-space-4)}.msg-typing-dots{display:flex;gap:4px;gap:var(--msg-space-1)}.msg-typing-dots span{animation:msg-typingBounce 1.4s ease-in-out infinite;background:#6c757d;background:var(--msg-text-muted);border-radius:50%;border-radius:var(--msg-radius-full);height:8px;width:8px}.msg-typing-dots span:first-child{animation-delay:-.32s}.msg-typing-dots span:nth-child(2){animation-delay:-.16s}.msg-typing-dots span:nth-child(3){animation-delay:0s}@keyframes msg-typingBounce{0%,80%,to{opacity:.5;transform:scale(.8)}40%{opacity:1;transform:scale(1)}}.msg-typing-text{color:#6c757d;color:var(--msg-text-muted);font-size:12px;font-size:var(--msg-text-sm);font-style:italic}.msg-input-container{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff;background:var(--msg-white);background-color:#fffffffa;border-top:1px solid #f0f0f0;border-top:1px solid var(--msg-border-light);box-shadow:0 -2px 10px #0000000d;flex-shrink:0;padding:16px 24px;padding:var(--msg-space-4) var(--msg-space-6);position:relative}.msg-selected-files{flex-wrap:wrap;margin-bottom:12px;margin-bottom:var(--msg-space-3)}.msg-selected-file,.msg-selected-files{display:flex;gap:8px;gap:var(--msg-space-2)}.msg-selected-file{align-items:center;background:#f8f9fa;background:var(--msg-light-bg);border:1px solid #e9ecef;border:1px solid var(--msg-border);border-radius:8px;border-radius:var(--msg-radius-md);font-size:14px;font-size:var(--msg-text-base);max-width:200px;padding:8px 12px;padding:var(--msg-space-2) var(--msg-space-3)}.msg-selected-file span{flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.msg-remove-file{align-items:center;background:#dc3545;background:var(--msg-danger);border:none;border-radius:50%;border-radius:var(--msg-radius-full);color:#fff;cursor:pointer;display:flex;flex-shrink:0;font-size:12px;font-size:var(--msg-text-sm);height:20px;justify-content:center;transition:all .3s ease;width:20px}.msg-remove-file:hover{background:#c82333;transform:scale(1.1)}.msg-input-area{align-items:flex-end;display:flex;gap:12px;gap:var(--msg-space-3);position:relative}.msg-input-tools{align-items:center;display:flex;flex-shrink:0;gap:4px;gap:var(--msg-space-1)}.msg-tool-button{align-items:center;background:#f8f9fa;background:var(--msg-light-bg);border:1px solid #e9ecef;border:1px solid var(--msg-border);border-radius:12px;border-radius:var(--msg-radius-lg);color:#6c757d;color:var(--msg-text-muted);cursor:pointer;display:flex;font-size:16px;font-size:var(--msg-text-lg);height:44px;justify-content:center;overflow:hidden;position:relative;transition:all .3s ease;width:44px}.msg-tool-button:before{background:linear-gradient(135deg,#0000,#0066cc1a,#0000);bottom:0;content:"";left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .3s ease}.msg-tool-button:hover{background:#e9ecef;background:var(--msg-border);box-shadow:0 4px 6px #0000001a;box-shadow:var(--msg-shadow-md);color:#1a1a1a;color:var(--msg-text-dark);transform:translateY(-2px)}.msg-tool-button:hover:before{opacity:1}.msg-tool-button:active{transform:translateY(0)}.msg-input-wrapper{align-items:flex-end;background:#f8f9fa;background:var(--msg-light-bg);border:2px solid #e9ecef;border:2px solid var(--msg-border);border-radius:20px;border-radius:var(--msg-radius-2xl);display:flex;flex:1 1;gap:8px;gap:var(--msg-space-2);min-height:56px;overflow:hidden;padding:8px;padding:var(--msg-space-2);position:relative;transition:all .3s ease}.msg-input-wrapper:before{background:linear-gradient(135deg,#0066cc05,#0066cc0d,#0066cc05);bottom:0;content:"";left:0;opacity:0;pointer-events:none;position:absolute;right:0;top:0;transition:opacity .3s ease}.msg-input-wrapper:focus-within{background:#fff;background:var(--msg-white);border-color:#06c;border-color:var(--msg-primary);box-shadow:0 0 0 4px #0066cc1a,0 10px 15px #0000001a;box-shadow:0 0 0 4px #0066cc1a,var(--msg-shadow-lg);transform:translateY(-1px)}.msg-input-wrapper:focus-within:before{opacity:1}.msg-input-field{background:#0000;border:none;color:#1a1a1a;color:var(--msg-text-dark);flex:1 1;font-family:inherit;font-size:14px;font-size:var(--msg-text-base);line-height:1.5;max-height:120px;min-height:24px;outline:none;padding:16px;padding:var(--msg-space-4);position:relative;resize:none;transition:all .3s ease;z-index:1}.msg-input-field::placeholder{color:#6c757d;color:var(--msg-text-muted);opacity:.7;transition:opacity .3s ease}.msg-input-field:focus::placeholder{opacity:.5}.msg-send-button{align-items:center;background:#6c757d;background:var(--msg-text-muted);border:none;border-radius:50%;border-radius:var(--msg-radius-full);box-shadow:0 4px 6px #0000001a;box-shadow:var(--msg-shadow-md);color:#fff;cursor:pointer;display:flex;flex-shrink:0;font-size:18px;font-size:var(--msg-text-xl);height:52px;justify-content:center;overflow:hidden;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1);width:52px}.msg-send-button:before{background:#ffffff4d;border-radius:50%;content:"";height:0;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);transition:all .3s ease;width:0}.msg-send-button:disabled{cursor:not-allowed;opacity:.5;transform:none}.msg-send-button.msg-active{background:linear-gradient(135deg,#06c,#049);background:linear-gradient(135deg,var(--msg-primary),var(--msg-primary-dark));box-shadow:0 4px 20px #06c6;transform:scale(1.05)}.msg-send-button.msg-active:before{height:100%;width:100%}.msg-send-button:hover:not(:disabled){box-shadow:0 8px 25px #0066cc4d;transform:scale(1.1) translateY(-2px)}.msg-send-button:active:not(:disabled){transform:scale(1.05)}.msg-send-icon{position:relative;transform:rotate(-45deg);transition:transform .3s ease;z-index:1}.msg-send-button.msg-active .msg-send-icon{transform:rotate(-45deg) scale(1.1)}.msg-empty-state{align-items:center;background:linear-gradient(135deg,#fafbfc,#f8f9fa);background:linear-gradient(135deg,#fafbfc,var(--msg-light-bg));display:flex;flex:1 1;justify-content:center}.msg-empty-content,.msg-empty-state{padding:40px;padding:var(--msg-space-10)}.msg-empty-content{max-width:400px;text-align:center}.msg-empty-icon{color:#6c757d;color:var(--msg-text-muted);font-size:80px;margin-bottom:24px;margin-bottom:var(--msg-space-6);opacity:.5}.msg-empty-content h3{color:#1a1a1a;color:var(--msg-text-dark);font-size:24px;font-size:var(--msg-text-3xl);font-weight:600;line-height:1.2;margin-bottom:12px;margin-bottom:var(--msg-space-3)}.msg-empty-content p{color:#6c757d;color:var(--msg-text-muted);font-size:16px;font-size:var(--msg-text-lg);line-height:1.5;margin-bottom:24px;margin-bottom:var(--msg-space-6)}.msg-start-chat-button{background:linear-gradient(135deg,#06c,#049);background:linear-gradient(135deg,var(--msg-primary),var(--msg-primary-dark));border:none;border-radius:8px;border-radius:var(--msg-radius-md);box-shadow:0 4px 6px #0000001a;box-shadow:var(--msg-shadow-md);color:#fff;cursor:pointer;font-size:16px;font-size:var(--msg-text-lg);font-weight:500;min-height:48px;padding:12px 24px;padding:var(--msg-space-3) var(--msg-space-6);transition:all .3s ease}.msg-start-chat-button:hover{box-shadow:0 10px 15px #0000001a;box-shadow:var(--msg-shadow-lg);transform:translateY(-2px)}.msg-start-chat-button:active{box-shadow:0 4px 6px #0000001a;box-shadow:var(--msg-shadow-md);transform:translateY(0)}.modal-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:16px;padding:var(--msg-space-4);position:fixed;right:0;top:0;z-index:1000;z-index:var(--msg-z-modal)}.msg-new-chat-modal{animation:msg-modalSlideIn .3s ease;background:#fff;background:var(--msg-white);border:1px solid #e9ecef;border:1px solid var(--msg-border);border-radius:16px;border-radius:var(--msg-radius-xl);box-shadow:0 20px 25px #00000026;box-shadow:var(--msg-shadow-xl);max-height:80vh;max-width:500px;overflow:hidden;width:100%}@keyframes msg-modalSlideIn{0%{opacity:0;transform:scale(.9) translateY(-20px)}to{opacity:1;transform:scale(1) translateY(0)}}.msg-modal-header{align-items:center;background:#fff;background:var(--msg-white);border-bottom:1px solid #f0f0f0;border-bottom:1px solid var(--msg-border-light);display:flex;justify-content:space-between;padding:24px;padding:var(--msg-space-6)}.msg-modal-header h3{color:#1a1a1a;color:var(--msg-text-dark);font-size:20px;font-size:var(--msg-text-2xl);font-weight:600;margin:0}.msg-close-button{align-items:center;background:#f8f9fa;background:var(--msg-light-bg);border:1px solid #e9ecef;border:1px solid var(--msg-border);border-radius:50%;border-radius:var(--msg-radius-full);color:#6c757d;color:var(--msg-text-muted);cursor:pointer;display:flex;font-size:18px;font-size:var(--msg-text-xl);height:36px;justify-content:center;transition:all .3s ease;width:36px}.msg-close-button:hover{background:#e9ecef;background:var(--msg-border);color:#1a1a1a;color:var(--msg-text-dark);transform:scale(1.1)}.msg-modal-content{overflow-y:auto;padding:24px;padding:var(--msg-space-6)}.msg-contact-search{margin-bottom:20px;margin-bottom:var(--msg-space-5)}.msg-contact-search input{background:#f8f9fa;background:var(--msg-light-bg);border:1px solid #e9ecef;border:1px solid var(--msg-border);border-radius:8px;border-radius:var(--msg-radius-md);font-family:inherit;font-size:14px;font-size:var(--msg-text-base);min-height:44px;outline:none;padding:12px 16px;padding:var(--msg-space-3) var(--msg-space-4);transition:all .3s ease;width:100%}.msg-contact-search input:focus{background:#fff;background:var(--msg-white);border-color:#06c;border-color:var(--msg-primary);box-shadow:0 0 0 3px #0066cc1a}.msg-contact-search input::placeholder{color:#6c757d;color:var(--msg-text-muted);opacity:.7}.msg-contact-list{display:flex;flex-direction:column;gap:8px;gap:var(--msg-space-2);max-height:300px;overflow-y:auto;scrollbar-color:#e9ecef #0000;scrollbar-color:var(--msg-border) #0000;scrollbar-width:thin}.msg-contact-item{align-items:center;border:1px solid #0000;border-radius:8px;border-radius:var(--msg-radius-md);cursor:pointer;display:flex;gap:12px;gap:var(--msg-space-3);min-height:60px;padding:12px;padding:var(--msg-space-3);transition:all .3s ease}.msg-contact-item:hover{background:#f8f9fa;background:var(--msg-light-bg);border-color:#e9ecef;border-color:var(--msg-border)}.msg-contact-avatar{align-items:center;background:linear-gradient(135deg,#f8f9fa,#e9ecef);background:linear-gradient(135deg,var(--msg-light-bg),var(--msg-border));border-radius:50%;border-radius:var(--msg-radius-full);color:#6c757d;color:var(--msg-text-muted);display:flex;flex-shrink:0;font-size:20px;font-size:var(--msg-text-2xl);font-weight:600;height:44px;justify-content:center;width:44px}.msg-contact-info{flex:1 1;min-width:0}.msg-contact-info h4{color:#1a1a1a;color:var(--msg-text-dark);font-size:16px;font-size:var(--msg-text-lg);font-weight:600;margin:0 0 4px;margin:0 0 var(--msg-space-1) 0}.msg-contact-info h4,.msg-contact-info p{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.msg-contact-info p{color:#6c757d;color:var(--msg-text-muted);font-size:14px;font-size:var(--msg-text-base);margin:0}@media (min-width:1920px){:root{--msg-sidebar-width:420px;--msg-text-base:15px;--msg-text-lg:17px;--msg-text-xl:19px;--msg-text-2xl:22px;--msg-text-3xl:26px}.msg-messages-wrapper{max-height:1000px}.msg-messages-area{padding:32px;padding:var(--msg-space-8)}.msg-chat-header,.msg-input-container{padding:24px 32px;padding:var(--msg-space-6) var(--msg-space-8)}.msg-input-wrapper{min-height:60px}.msg-send-button{height:56px;width:56px}}@media (min-width:1440px) and (max-width:1919px){:root{--msg-sidebar-width:400px}.msg-messages-area{padding:24px 32px;padding:var(--msg-space-6) var(--msg-space-8)}.msg-chat-header,.msg-input-container{padding:20px 32px;padding:var(--msg-space-5) var(--msg-space-8)}}@media (min-width:1200px) and (max-width:1439px){.msg-conversations-panel{width:380px;width:var(--msg-sidebar-width)}.msg-messages-area{padding:24px;padding:var(--msg-space-6)}.msg-chat-header,.msg-input-container{padding:20px 24px;padding:var(--msg-space-5) var(--msg-space-6)}}@media (min-width:992px) and (max-width:1199px){:root{--msg-sidebar-width:350px}.msg-messages-area{padding:20px;padding:var(--msg-space-5)}.msg-chat-header,.msg-input-container{padding:16px 20px;padding:var(--msg-space-4) var(--msg-space-5)}.msg-message-bubble{max-width:80%}.msg-avatar-icon{font-size:16px;font-size:var(--msg-text-lg);height:48px;width:48px}.msg-participant-avatar span{font-size:18px;font-size:var(--msg-text-xl);height:52px;width:52px}}@media (min-width:768px) and (max-width:991px){:root{--msg-container-height:var(--msg-mobile-height)}.msg-messages-wrapper{border-radius:8px;border-radius:var(--msg-radius-md);flex-direction:column;height:auto;max-height:none;min-height:100vh}.msg-conversations-panel{border-bottom:1px solid #e9ecef;border-bottom:1px solid var(--msg-border);border-right:none;flex-shrink:0;max-height:45vh;max-height:var(--msg-mobile-panel-height);width:100%}.msg-chat-panel{flex:1 1;min-height:55vh;min-height:var(--msg-mobile-chat-height)}.msg-header{padding:16px;padding:var(--msg-space-4)}.msg-conversation-item{min-height:72px;padding:12px;padding:var(--msg-space-3)}.msg-avatar-icon{font-size:14px;font-size:var(--msg-text-base);height:44px;width:44px}.msg-participant-avatar span{font-size:16px;font-size:var(--msg-text-lg);height:48px;width:48px}.msg-action-button{font-size:16px;font-size:var(--msg-text-lg);height:44px;width:44px}.msg-message-bubble{max-width:85%}.msg-chat-header,.msg-input-container,.msg-messages-area{padding:16px;padding:var(--msg-space-4)}.msg-input-container{background:#fff;background:var(--msg-white);border-top:2px solid #f0f0f0;border-top:2px solid var(--msg-border-light);box-shadow:0 -4px 20px #0000001a}.msg-input-area{align-items:stretch;flex-direction:column;gap:16px;gap:var(--msg-space-4)}.msg-input-tools{gap:12px;gap:var(--msg-space-3);justify-content:center;order:1}.msg-input-wrapper{border-radius:16px;border-radius:var(--msg-radius-xl);min-height:52px;order:2}.msg-input-field{font-size:14px;font-size:var(--msg-text-base);padding:16px;padding:var(--msg-space-4)}.msg-send-button{height:48px;width:48px}.msg-new-chat-modal{margin:16px;margin:var(--msg-space-4);max-width:500px;width:95%}}@media (min-width:576px) and (max-width:767px){.msg-messages-wrapper{border-radius:8px;border-radius:var(--msg-radius-md);flex-direction:column;height:auto;margin:20px;margin:var(--msg-space-5);min-height:calc(100vh - 40px)}.msg-conversations-panel{border-bottom:1px solid #e9ecef;border-bottom:1px solid var(--msg-border);border-right:none;max-height:40vh;width:100%}.msg-chat-panel{min-height:60vh}.msg-header{padding:16px;padding:var(--msg-space-4)}.msg-header h2{font-size:20px;font-size:var(--msg-text-2xl)}.msg-compose-button{font-size:12px;font-size:var(--msg-text-sm);min-width:120px;padding:12px;padding:var(--msg-space-3)}.msg-conversation-item{min-height:70px;padding:12px;padding:var(--msg-space-3)}.msg-conversation-title{font-size:14px;font-size:var(--msg-text-base)}.msg-last-message{font-size:12px;font-size:var(--msg-text-sm)}.msg-participant-details h3{font-size:18px;font-size:var(--msg-text-xl)}.msg-message-content{padding:12px;padding:var(--msg-space-3)}.msg-message-text{font-size:14px;font-size:var(--msg-text-base)}.msg-chat-header,.msg-input-container,.msg-messages-area{padding:16px 12px;padding:var(--msg-space-4) var(--msg-space-3)}.msg-input-container{background:#fff;background:var(--msg-white);border-top:2px solid #f0f0f0;border-top:2px solid var(--msg-border-light);box-shadow:0 -4px 15px #00000014}.msg-input-area{flex-direction:column;gap:12px;gap:var(--msg-space-3)}.msg-input-tools{gap:8px;gap:var(--msg-space-2);justify-content:center;order:1}.msg-tool-button{height:42px;width:42px}.msg-input-wrapper{min-height:50px;order:2}.msg-input-field{font-size:14px;font-size:var(--msg-text-base);padding:12px 16px;padding:var(--msg-space-3) var(--msg-space-4)}.msg-send-button{height:46px;width:46px}}@media (max-width:575px){:root{--msg-text-base:14px;--msg-text-lg:15px;--msg-text-xl:16px;--msg-text-2xl:18px;--msg-text-3xl:20px}.msg-messages-wrapper{border-radius:8px;border-radius:var(--msg-radius-md);flex-direction:column;height:auto;margin:12px;margin:var(--msg-space-3);min-height:calc(100vh - 20px)}.msg-conversations-panel{border-bottom:1px solid #e9ecef;border-bottom:1px solid var(--msg-border);border-right:none;max-height:40vh;width:100%}.msg-chat-panel{min-height:60vh}.msg-header{padding:12px;padding:var(--msg-space-3)}.msg-header h2{font-size:18px;font-size:var(--msg-text-xl)}.msg-compose-button{font-size:12px;font-size:var(--msg-text-sm);gap:4px;gap:var(--msg-space-1);min-width:100px;padding:8px 12px;padding:var(--msg-space-2) var(--msg-space-3)}.msg-icon,.msg-search-field{font-size:14px;font-size:var(--msg-text-base)}.msg-search-field{min-height:40px;padding:12px 12px 12px 32px;padding:var(--msg-space-3) var(--msg-space-3) var(--msg-space-3) var(--msg-space-8)}.msg-filter-tab{font-size:10px;font-size:var(--msg-text-xs);min-height:32px;padding:8px;padding:var(--msg-space-2)}.msg-conversation-item{min-height:68px;padding:12px;padding:var(--msg-space-3)}.msg-avatar-icon{height:40px;width:40px}.msg-avatar-icon,.msg-conversation-title{font-size:14px;font-size:var(--msg-text-base)}.msg-conversation-title{font-weight:600}.msg-last-message{font-size:12px;font-size:var(--msg-text-sm)}.msg-timestamp{font-size:10px}.msg-department-tag,.msg-participants-count{font-size:10px;padding:2px 8px;padding:2px var(--msg-space-2)}.msg-chat-header{padding:12px;padding:var(--msg-space-3)}.msg-participant-avatar span{font-size:18px;font-size:var(--msg-text-xl);height:44px;width:44px}.msg-participant-details h3{font-size:16px;font-size:var(--msg-text-lg)}.msg-participant-status{font-size:12px;font-size:var(--msg-text-sm)}.msg-action-button{font-size:14px;font-size:var(--msg-text-base);height:40px;width:40px}.msg-messages-area{padding:12px;padding:var(--msg-space-3)}.msg-message-bubble{max-width:90%;min-width:80px}.msg-message-content{padding:12px;padding:var(--msg-space-3)}.msg-message-text{font-size:14px;font-size:var(--msg-text-base)}.msg-message-time{font-size:10px}.msg-input-container{background:#fff;background:var(--msg-white);border-top:2px solid #f0f0f0;border-top:2px solid var(--msg-border-light);bottom:0;box-shadow:0 -6px 20px #0000001a;padding:12px;padding:var(--msg-space-3);position:sticky;z-index:10}.msg-input-area{align-items:stretch;flex-direction:column;gap:12px;gap:var(--msg-space-3)}.msg-input-tools{flex-wrap:wrap;gap:8px;gap:var(--msg-space-2);justify-content:center;order:1;padding:8px 0;padding:var(--msg-space-2) 0}.msg-tool-button{border-radius:8px;border-radius:var(--msg-radius-md);font-size:14px;font-size:var(--msg-text-base);height:40px;transition:all .3s ease;width:40px}.msg-tool-button:active{background:#06c;background:var(--msg-primary);color:#fff;transform:scale(.95)}.msg-input-wrapper{border-radius:16px;border-radius:var(--msg-radius-xl);border-width:2px;box-shadow:0 4px 6px #0000001a;box-shadow:var(--msg-shadow-md);min-height:48px;order:2;padding:4px;padding:var(--msg-space-1)}.msg-input-wrapper:focus-within{box-shadow:0 6px 25px #0066cc26;transform:translateY(-2px)}.msg-input-field{font-size:14px;font-size:var(--msg-text-base);line-height:1.4;min-height:20px;padding:12px;padding:var(--msg-space-3)}.msg-send-button{box-shadow:0 4px 6px #0000001a;box-shadow:var(--msg-shadow-md);font-size:16px;font-size:var(--msg-text-lg);height:44px;width:44px}.msg-send-button:active:not(:disabled){transform:scale(.9)}.msg-send-button.msg-active{animation:pulse 2s infinite;box-shadow:0 4px 15px #06c6}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}.msg-empty-content{padding:20px;padding:var(--msg-space-5)}.msg-empty-icon{font-size:60px}.msg-empty-content h3{font-size:18px;font-size:var(--msg-text-xl)}.msg-empty-content p,.msg-start-chat-button{font-size:14px;font-size:var(--msg-text-base)}.msg-start-chat-button{max-width:280px;padding:12px 16px;padding:var(--msg-space-3) var(--msg-space-4);width:100%}.msg-new-chat-modal{margin:12px;margin:var(--msg-space-3);width:95%}.msg-modal-header{padding:16px;padding:var(--msg-space-4)}.msg-modal-header h3{font-size:18px;font-size:var(--msg-text-xl)}.msg-modal-content{padding:16px;padding:var(--msg-space-4)}.msg-contact-item{min-height:56px;padding:12px;padding:var(--msg-space-3)}.msg-contact-avatar{font-size:18px;font-size:var(--msg-text-xl);height:40px;width:40px}.msg-contact-info h4{font-size:14px;font-size:var(--msg-text-base)}.msg-contact-info p{font-size:12px;font-size:var(--msg-text-sm)}}@media (max-width:320px){.msg-messages-wrapper{margin:8px;margin:var(--msg-space-2);min-height:calc(100vh - 16px)}.msg-header{padding:8px;padding:var(--msg-space-2)}.msg-header h2{font-size:16px;font-size:var(--msg-text-lg)}.msg-compose-button{font-size:10px;font-size:var(--msg-text-xs);min-width:80px;padding:8px;padding:var(--msg-space-2)}.msg-conversation-item{min-height:60px;padding:8px;padding:var(--msg-space-2)}.msg-avatar-icon{height:36px;width:36px}.msg-avatar-icon,.msg-conversation-title{font-size:12px;font-size:var(--msg-text-sm)}.msg-last-message{font-size:10px;font-size:var(--msg-text-xs)}.msg-chat-header{padding:8px;padding:var(--msg-space-2)}.msg-participant-avatar span{font-size:16px;font-size:var(--msg-text-lg);height:40px;width:40px}.msg-participant-details h3{font-size:14px;font-size:var(--msg-text-base)}.msg-action-button{font-size:12px;font-size:var(--msg-text-sm);height:36px;width:36px}.msg-message-content,.msg-messages-area{padding:8px;padding:var(--msg-space-2)}.msg-message-text{font-size:12px;font-size:var(--msg-text-sm)}.msg-input-container{padding:8px;padding:var(--msg-space-2)}.msg-input-area{gap:8px;gap:var(--msg-space-2)}.msg-tool-button{font-size:12px;font-size:var(--msg-text-sm);height:36px;width:36px}.msg-input-wrapper{min-height:44px}.msg-input-field{font-size:12px;font-size:var(--msg-text-sm);padding:8px;padding:var(--msg-space-2)}.msg-send-button{font-size:14px;font-size:var(--msg-text-base);height:40px;width:40px}.msg-empty-icon{font-size:48px}.msg-empty-content h3{font-size:16px;font-size:var(--msg-text-lg)}.msg-empty-content p{font-size:12px;font-size:var(--msg-text-sm)}.msg-modal-content,.msg-modal-header{padding:12px;padding:var(--msg-space-3)}}@media (hover:none) and (pointer:coarse){.msg-conversation-item{min-height:64px;padding:16px;padding:var(--msg-space-4)}.msg-action-button,.msg-compose-button,.msg-send-button,.msg-start-chat-button,.msg-tool-button{min-height:44px;min-width:44px}.msg-filter-tab,.msg-input-field,.msg-search-field{min-height:44px}.msg-contact-item{min-height:64px}.msg-input-wrapper{min-height:48px}.msg-tool-button:active{background:#06c;background:var(--msg-primary);color:#fff;transform:scale(.95)}.msg-send-button:active:not(:disabled){box-shadow:0 2px 10px #0066cc4d;transform:scale(.9)}.msg-action-button:hover,.msg-compose-button:hover,.msg-conversation-item:hover,.msg-send-button:hover,.msg-start-chat-button:hover,.msg-tool-button:hover{transform:none}.msg-conversation-item:active{background:#e9ecef;background:var(--msg-border)}.msg-compose-button:active,.msg-start-chat-button:active{transform:scale(.98)}.msg-action-button:active{transform:scale(.95)}}@media (orientation:landscape) and (max-height:500px){.msg-messages-wrapper{height:100vh;max-height:none}.msg-conversations-panel{border-bottom:none;border-right:1px solid #e9ecef;border-right:1px solid var(--msg-border);max-height:none;width:320px;width:var(--msg-sidebar-width-tablet)}.msg-messages-wrapper{flex-direction:row}.msg-header{padding:12px;padding:var(--msg-space-3)}.msg-conversation-item{min-height:56px;padding:8px 12px;padding:var(--msg-space-2) var(--msg-space-3)}.msg-input-container,.msg-messages-area{padding:12px;padding:var(--msg-space-3)}.msg-input-area{align-items:flex-end;flex-direction:row}.msg-input-tools{justify-content:flex-start;order:0}.msg-input-wrapper{order:1}}@media (prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media (prefers-contrast:high){:root{--msg-border:#000;--msg-light-bg:#fff;--msg-text-muted:#000}.msg-conversation-item.msg-active{border-left-color:#000;border-left-width:4px}.msg-message-wrapper.msg-received .msg-message-bubble,.msg-message-wrapper.msg-sent .msg-message-bubble{border:2px solid #000}.msg-input-wrapper{border-color:#000;border-width:2px}}.msg-contact-list::-webkit-scrollbar,.msg-conversations-list::-webkit-scrollbar,.msg-messages-area::-webkit-scrollbar,.msg-modal-content::-webkit-scrollbar{height:6px;width:6px}.msg-contact-list::-webkit-scrollbar-track,.msg-conversations-list::-webkit-scrollbar-track,.msg-messages-area::-webkit-scrollbar-track,.msg-modal-content::-webkit-scrollbar-track{background:#f8f9fa;background:var(--msg-light-bg);border-radius:6px;border-radius:var(--msg-radius-sm)}.msg-contact-list::-webkit-scrollbar-thumb,.msg-conversations-list::-webkit-scrollbar-thumb,.msg-messages-area::-webkit-scrollbar-thumb,.msg-modal-content::-webkit-scrollbar-thumb{background:#e9ecef;background:var(--msg-border);border-radius:6px;border-radius:var(--msg-radius-sm);-webkit-transition:all .3s ease;transition:all .3s ease}.msg-contact-list::-webkit-scrollbar-thumb:hover,.msg-conversations-list::-webkit-scrollbar-thumb:hover,.msg-messages-area::-webkit-scrollbar-thumb:hover,.msg-modal-content::-webkit-scrollbar-thumb:hover{background:#6c757d;background:var(--msg-text-muted)}.msg-contact-list,.msg-conversations-list,.msg-messages-area,.msg-modal-content{scrollbar-color:#e9ecef #f8f9fa;scrollbar-color:var(--msg-border) var(--msg-light-bg);scrollbar-width:thin}@media print{.msg-messages-wrapper{border:1px solid #000;box-shadow:none;height:auto;max-height:none}.msg-conversations-panel{display:none}.msg-chat-header{border-bottom:2px solid #000}.msg-input-container{display:none}.msg-message-bubble{border:1px solid #000;box-shadow:none;max-width:100%}.msg-messages-area{padding:0}}.msg-sr-only{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.msg-no-select{-webkit-user-select:none;user-select:none}.msg-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.msg-flex-center{align-items:center;display:flex;justify-content:center}.msg-hidden{display:none}.msg-visible{display:block}.msg-messages-wrapper{transform:translateZ(0);will-change:transform}.msg-conversation-item{will-change:transform}.msg-message-wrapper{will-change:opacity,transform}.msg-action-button,.msg-compose-button,.msg-send-button,.msg-tool-button{transform:translateZ(0)}.msg-conversations-list,.msg-messages-area{contain:layout style paint}.evaluator-card{background:#fff;background:var(--background-white);border:2px solid #e2e8f0;border:2px solid var(--border-light);border-radius:.75rem;border-radius:var(--radius-lg);box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;box-shadow:var(--shadow-md);display:flex;flex-direction:column;min-height:280px;padding:1.5rem;padding:var(--spacing-lg);position:relative;transition:all .3s ease}.evaluator-card.submitted{background:linear-gradient(135deg,#d4edda,#c3e6cb)!important;border-color:#28a745!important;border-width:3px!important;box-shadow:0 4px 15px #28a74533!important}.evaluator-card.submitted:hover{background:linear-gradient(135deg,#c3e6cb,#b1dfbb)!important;box-shadow:0 8px 25px #28a7454d!important;transform:translateY(-2px)}.evaluator-card.pending{background:linear-gradient(135deg,#fff3cd,#ffeaa7)!important;border-color:#fd7e14!important;border-width:3px!important;box-shadow:0 4px 15px #fd7e1433!important}.evaluator-card.pending:hover{background:linear-gradient(135deg,#ffeaa7,#fdcb6e)!important;box-shadow:0 8px 25px #fd7e144d!important;transform:translateY(-2px)}.evaluator-card .status-indicator{border:2px solid #0000;border-radius:20px;box-shadow:0 2px 8px #0000001a;font-size:12px;font-weight:700;letter-spacing:.5px;padding:.5rem 1rem;padding:var(--spacing-sm) var(--spacing-md);text-transform:uppercase;transition:all .3s ease}.evaluator-card.submitted .status-indicator{background:#28a745!important;border-color:#1e7e34!important;color:#fff!important;text-shadow:0 1px 2px #0003}.evaluator-card.submitted .status-indicator:hover{background:#218838!important;box-shadow:0 4px 12px #28a74566;transform:scale(1.05)}.evaluator-card.pending .status-indicator{background:#fd7e14!important;border-color:#e55a00!important;color:#fff!important;text-shadow:0 1px 2px #0003}.evaluator-card.pending .status-indicator:hover{background:#e55a00!important;box-shadow:0 4px 12px #fd7e1466;transform:scale(1.05)}.evaluator-card.submitted .avatar{background:linear-gradient(135deg,#28a745,#20c997)!important;border-color:#1e7e34!important;border-width:3px!important;box-shadow:0 4px 15px #28a7454d;color:#fff!important}.evaluator-card.pending .avatar{background:linear-gradient(135deg,#fd7e14,#ffc107)!important;border-color:#e55a00!important;border-width:3px!important;box-shadow:0 4px 15px #fd7e144d;color:#fff!important}.evaluation-card-status-success,.status-success{background:linear-gradient(135deg,#28a745,#20c997)!important;border:2px solid #1e7e34!important;border-radius:16px;box-shadow:0 3px 10px #28a7454d}.evaluation-card-status-pending,.evaluation-card-status-success,.status-pending,.status-success{color:#fff!important;display:inline-block;font-size:11px;font-weight:700;letter-spacing:.5px;min-width:80px;padding:6px 12px;text-align:center;text-transform:uppercase}.evaluation-card-status-pending,.status-pending{background:linear-gradient(135deg,#fd7e14,#ffc107)!important;border:2px solid #e55a00!important;border-radius:16px;box-shadow:0 3px 10px #fd7e144d}.evaluation-card-status-success:hover,.status-success:hover{background:linear-gradient(135deg,#218838,#1e7e34)!important;box-shadow:0 5px 15px #28a74566;transform:translateY(-1px)}.evaluation-card-status-pending:hover,.status-pending:hover{background:linear-gradient(135deg,#e55a00,#d73502)!important;box-shadow:0 5px 15px #fd7e1466;transform:translateY(-1px)}.evaluator-card.submitted .submit-button{background:linear-gradient(135deg,#17a2b8,#138496)!important;border:2px solid #117a8b!important;color:#fff!important}.evaluator-card.submitted .submit-button:hover:not(:disabled){background:linear-gradient(135deg,#138496,#117a8b)!important;box-shadow:0 4px 15px #17a2b866}.evaluator-card.pending .submit-button{background:linear-gradient(135deg,#28a745,#20c997)!important;border:2px solid #1e7e34!important;color:#fff!important}.evaluator-card.pending .submit-button:hover:not(:disabled){background:linear-gradient(135deg,#218838,#1e7e34)!important;box-shadow:0 4px 15px #28a74566}.evaluator-card.submitted:before{background:linear-gradient(180deg,#28a745,#20c997)}.evaluator-card.pending:before,.evaluator-card.submitted:before{border-radius:.75rem 0 0 .75rem;border-radius:var(--radius-lg) 0 0 var(--radius-lg);bottom:0;content:"";left:0;position:absolute;top:0;width:6px}.evaluator-card.pending:before{background:linear-gradient(180deg,#fd7e14,#ffc107)}@media (max-width:768px){.evaluator-card.pending,.evaluator-card.submitted{min-height:auto;padding:1rem;padding:var(--spacing-md)}.evaluation-card-status-pending,.evaluation-card-status-success,.status-pending,.status-success{font-size:10px;min-width:60px;padding:4px 8px}.evaluator-card .status-indicator{font-size:10px;padding:4px 8px}}@media (prefers-contrast:high){.evaluator-card.submitted{background:#fff!important;border:4px solid #000!important}.evaluator-card.submitted .status-indicator{background:#000!important;border:2px solid #0f0!important;color:#0f0!important}.evaluator-card.pending{background:#fff!important;border:4px solid #000!important}.evaluator-card.pending .status-indicator{background:#000!important;border:2px solid #ff0!important;color:#ff0!important}}.board-card.submitted{background:linear-gradient(135deg,#d4edda,#c3e6cb 50%,#b1dfbb)!important;border:3px solid #28a745!important}.board-card.pending{background:linear-gradient(135deg,#fff3cd,#ffeaa7 50%,#fdcb6e)!important;border:3px solid #fd7e14!important}@media print{.evaluator-card.submitted{background:#f0f0f0!important;border:2px solid #000!important}.evaluator-card.pending{background:#f5f5f5!important;border:2px solid #000!important}.evaluation-card-status-pending,.evaluation-card-status-success{background:#fff!important;border:1px solid #000!important;color:#000!important}}.form-group input.error{background-color:#fdf2f2;border:2px solid #e74c3c}.error-message{color:#e74c3c;font-size:.875rem}.form-group input.error:focus{border-color:#e74c3c;box-shadow:0 0 0 2px #e74c3c1a}.action-button:disabled{cursor:not-allowed;opacity:.6}.avatar-container{height:120px;width:120px}.profile-avatar{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cpath fill='%23f3f4f6' d='M0 0h120v120H0z'/%3E%3Ccircle cx='60' cy='45' r='20' fill='%23d1d5db'/%3E%3Cpath d='M20 100q20-20 40-15 20-5 40 15v20H20Z' fill='%23d1d5db'/%3E%3C/svg%3E");box-shadow:0 2px 10px #0000001a;transition:box-shadow .2s ease,filter .2s ease}.profile-avatar:hover{box-shadow:0 4px 15px #00000026}.profile-avatar-container{height:120px;margin:0 auto 1rem;position:relative;width:120px}.profile-avatar-container .profile-avatar{height:120px!important;margin:0;width:120px!important}.change-password-overlay{align-items:center;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background-color:#0009;display:flex;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:1000}.change-password-modal{animation:modalSlideIn .3s ease-out;background:#fff;border-radius:12px;box-shadow:0 8px 32px #0003;max-width:90vw;overflow:hidden;width:380px}.modal-header{background:#f9fafb;border-bottom:1px solid #e5e7eb;padding:20px 24px 16px}.modal-header h3{color:#1f2937;font-size:1.2rem;font-weight:600;margin:0}.close-button{align-items:center;color:#6b7280;display:flex;font-size:24px;height:32px;justify-content:center;transition:all .2s ease;width:32px}.close-button:hover{background:#e5e7eb;color:#374151}.change-password-form{padding:20px 24px 24px}.change-password-form .form-group{margin-bottom:16px}.change-password-form .form-group:last-of-type{margin-bottom:20px}.change-password-form label{color:#374151;display:block;font-size:.9rem;font-weight:500;margin-bottom:6px}.change-password-form input{border:1.5px solid #d1d5db;border-radius:6px;box-sizing:border-box;font-size:.9rem;padding:10px 12px;transition:all .2s ease;width:100%}.change-password-form input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.change-password-form input.error{border-color:#ef4444;box-shadow:0 0 0 3px #ef44441a}.error-message{font-size:.8rem;margin-left:2px}.form-actions{border-top:1px solid #f3f4f6;padding-top:16px}.submit-button{background:#3b82f6;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:500;padding:10px 20px;transition:all .2s ease}.submit-button:hover:not(:disabled){background:#2563eb;box-shadow:0 4px 12px #3b82f666;transform:translateY(-1px)}.submit-button:disabled{background:#9ca3af;cursor:not-allowed;transform:none}.cancel-button{background:#f3f4f6;border:none;border-radius:6px;color:#6b7280;cursor:pointer;font-size:.9rem;font-weight:500;padding:10px 20px;transition:all .2s ease}.cancel-button:hover{background:#e5e7eb;color:#374151}@media (max-width:480px){.change-password-modal{margin:0 16px;width:340px}.modal-header{padding:16px 20px 12px}.change-password-form{padding:16px 20px 20px}.form-actions{flex-direction:column}.cancel-button,.submit-button{width:100%}}.visibility-status{align-items:center;display:flex;gap:.5rem;margin-bottom:.75rem}.status-badge{border-radius:12px;font-weight:500}.status-badge.visible{background:#dcfce7;color:#166534}.status-badge.hidden{background:#fef2f2;color:#dc2626}.visibility-description{margin-bottom:1rem}.visibility-toggle-container{display:flex;justify-content:flex-start}.visibility-toggle-btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;font-size:.9rem;font-weight:500;gap:.5rem;justify-content:center;min-width:140px;padding:.5rem 1rem;transition:all .2s ease}.visibility-toggle-btn.visible{background:#fee2e2;border:1px solid #fecaca;color:#dc2626}.visibility-toggle-btn.visible:hover:not(:disabled){background:#fecaca;box-shadow:0 2px 8px #dc262633;color:#b91c1c;transform:translateY(-1px)}.visibility-toggle-btn.hidden{background:#dcfce7;border:1px solid #bbf7d0;color:#166534}.visibility-toggle-btn.hidden:hover:not(:disabled){background:#bbf7d0;box-shadow:0 2px 8px #16653433;color:#14532d;transform:translateY(-1px)}.visibility-toggle-btn:disabled{box-shadow:none;cursor:not-allowed;opacity:.6;transform:none}.toggle-icon{font-size:1rem}.toggle-text{font-weight:500}@media (max-width:768px){.visibility-toggle-btn{min-width:auto;width:100%}.visibility-status{align-items:flex-start;flex-direction:column;gap:.25rem}}.visibility-simple{padding:1rem 0;text-align:center}.visibility-active,.visibility-inactive{align-items:center;display:flex;flex-direction:column;gap:1rem}.active-status,.inactive-status{align-items:center;display:flex;font-size:1.1rem;font-weight:600;gap:.5rem}.active-status{color:#059669}.inactive-status{color:#3b82f6;cursor:pointer}.status-icon{font-size:1.5rem}.status-text{font-weight:600}.visibility-description{color:#6b7280;font-size:.9rem;line-height:1.4;margin:0;text-align:center}.visibility-action-btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;font-size:.9rem;font-weight:600;gap:.5rem;justify-content:center;min-width:140px;padding:.75rem 1.5rem;transition:all .3s ease}.show-btn{background:linear-gradient(135deg,#3b82f6,#1d4ed8);box-shadow:0 4px 12px #3b82f64d;color:#fff}.show-btn:hover:not(:disabled){background:linear-gradient(135deg,#2563eb,#1e40af);box-shadow:0 6px 20px #3b82f666;transform:translateY(-2px)}.hide-btn{background:linear-gradient(135deg,#ef4444,#dc2626);box-shadow:0 4px 12px #ef44444d;color:#fff}.hide-btn:hover:not(:disabled){background:linear-gradient(135deg,#dc2626,#b91c1c);box-shadow:0 6px 20px #ef444466;transform:translateY(-2px)}.visibility-action-btn:disabled{box-shadow:none;cursor:not-allowed;opacity:.6;transform:none}@media (max-width:768px){.visibility-action-btn{min-width:auto;width:100%}.active-status,.inactive-status{flex-direction:column;gap:.25rem}.status-icon{font-size:2rem}}.visibility-simple{animation:fadeIn .3s ease-in-out}.profile-picture-section{margin-bottom:2rem;position:relative;text-align:center}.avatar-container{display:inline-block;min-height:120px;min-width:120px;overflow:hidden;transform:translateZ(0);-webkit-transform:translateZ(0);transform-style:preserve-3d}.avatar-container,.profile-avatar{backface-visibility:hidden;-webkit-backface-visibility:hidden;border-radius:50%;height:120px!important;position:relative;width:120px!important;will-change:auto}.profile-avatar{background-color:#f3f4f6;background-position:50%;background-repeat:no-repeat;background-size:cover;border:3px solid #e1e5e9;display:block;object-fit:cover;transition:opacity .3s ease,filter .2s ease}.profile-avatar,.upload-avatar-button{transform:translateZ(0);-webkit-transform:translateZ(0)}.upload-avatar-button{align-items:center;backface-visibility:hidden;-webkit-backface-visibility:hidden;background:#3b82f6;border:2px solid #fff;border-radius:50%;bottom:-2px;box-shadow:0 2px 8px #3b82f666;cursor:pointer;display:flex;height:36px;justify-content:center;position:absolute;right:-2px;transition:background-color .2s ease,box-shadow .2s ease;width:36px}.upload-avatar-button:hover{background:#2563eb;box-shadow:0 4px 12px #2563eb99}.loading-overlay{backface-visibility:hidden;background:#fffc;border-radius:50%;height:100%;pointer-events:none;transform:translateZ(0);width:100%}.loading-spinner{border:2px solid #e1e5e9;height:20px;width:20px}.update-photo-content{align-items:center;color:#fff;display:flex;flex-direction:column;font-size:10px;line-height:1}.camera-icon{font-size:12px;margin-bottom:2px}.upload-avatar-button span{font-size:7px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.profile-form{margin:0 auto;max-width:600px}.form-group{margin-bottom:1.5rem;position:relative}.form-group input,.form-group select,.form-group textarea{box-sizing:border-box;transition:border-color .2s ease,box-shadow .2s ease;width:100%}@media (max-width:768px){.avatar-container{min-height:100px;min-width:100px}.avatar-container,.profile-avatar{height:100px!important;width:100px!important}}@media (prefers-reduced-motion:reduce){.loading-overlay,.profile-avatar,.upload-avatar-button{transition:none}.loading-spinner{animation:none}}.supervision-requests-container{padding:2rem}.supervision-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:2rem}.supervision-header h2{color:#1a202c;color:var(--text-primary);font-size:1.8rem;font-weight:600}.refresh-button{align-items:center;background:var(--primary-color);border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:.9rem;gap:.5rem;padding:.5rem 1rem;transition:background-color .2s}.refresh-button:hover{background:#049;background:var(--primary-dark)}.requests-grid{grid-gap:1.5rem;display:grid;gap:1.5rem}.request-card{background:#fff;border:1px solid var(--border-color);border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:1.5rem;transition:box-shadow .2s}.request-card:hover{box-shadow:0 4px 16px #00000026}.request-header{align-items:center;border-bottom:1px solid #e2e8f0;border-bottom:1px solid var(--border-light);display:flex;justify-content:space-between;margin-bottom:1rem;padding-bottom:.75rem}.request-header h3{color:#1a202c;color:var(--text-primary);font-size:1.25rem;font-weight:600;margin:0}.status-badge{border-radius:20px;font-size:.8rem;font-weight:600;padding:.25rem .75rem;text-transform:uppercase}.status-badge.pending{background:#fef3c7;color:#f59e0b}.status-badge.accepted{background:#d1fae5;color:#10b981}.status-badge.rejected{background:#fee2e2;color:#ef4444}.request-info{margin-bottom:1.5rem}.project-info,.requester-info,.team-info{margin-bottom:1rem}.project-info p,.requester-info p,.team-info p{color:#4a5568;color:var(--text-secondary);line-height:1.5;margin:.25rem 0}.request-date{border-top:1px solid #e2e8f0;border-top:1px solid var(--border-light);margin-top:.5rem;padding-top:.5rem}.request-date small{color:#718096;color:var(--text-muted);font-size:.85rem}.request-actions{display:flex;flex-wrap:wrap;gap:1rem}.view-details-btn{align-items:center;background:var(--secondary-color);border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:.9rem;gap:.5rem;padding:.5rem 1rem;transition:background-color .2s}.view-details-btn:hover{background:var(--secondary-dark)}.view-details-btn:disabled{cursor:not-allowed;opacity:.6}.response-actions{display:flex;gap:.5rem}.accept-btn,.decline-btn{align-items:center;border:none;border-radius:6px;cursor:pointer;display:flex;font-size:.9rem;gap:.5rem;padding:.5rem 1rem;transition:background-color .2s}.accept-btn{background:#10b981;color:#fff}.accept-btn:hover{background:#059669}.decline-btn{background:#ef4444;color:#fff}.decline-btn:hover{background:#dc2626}.team-details-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.team-details-modal{background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;display:flex;flex-direction:column;max-height:90vh;max-width:900px;overflow:hidden;width:90%}.modal-header{align-items:center;background:#f7fafc;background:var(--background-light);border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;padding:1.5rem 2rem}.modal-header h2{color:#1a202c;color:var(--text-primary);font-size:1.5rem;font-weight:600;margin:0}.close-button{background:none;border:none;border-radius:6px;color:#718096;color:var(--text-muted);cursor:pointer;font-size:1.5rem;padding:.5rem;transition:color .2s,background-color .2s}.close-button:hover{background:#0000001a;color:#1a202c;color:var(--text-primary)}.modal-content{flex:1 1;overflow-y:auto;padding:2rem}.team-info-section{border-bottom:2px solid #e2e8f0;border-bottom:2px solid var(--border-light);margin-bottom:2rem;padding-bottom:2rem}.team-info-section h3{color:#1a202c;color:var(--text-primary);font-size:1.3rem;font-weight:600;margin-bottom:1.5rem}.team-info-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:1.5rem}.info-item{align-items:center;background:#f7fafc;background:var(--background-light);border:1px solid #e2e8f0;border:1px solid var(--border-light);border-radius:8px;display:flex;justify-content:space-between;padding:.75rem 1rem}.info-item strong{color:#1a202c;color:var(--text-primary);font-weight:600}.info-item span{color:#4a5568;color:var(--text-secondary);font-weight:500}.project-description,.team-description{margin-bottom:1.5rem}.project-description h4,.team-description h4{color:#1a202c;color:var(--text-primary);font-size:1.1rem;font-weight:600;margin-bottom:.75rem}.project-description p,.team-description p{background:#f7fafc;background:var(--background-light);border-left:4px solid var(--primary-color);border-radius:8px;color:#4a5568;color:var(--text-secondary);line-height:1.6;margin:0;padding:1rem}.team-statistics{margin-bottom:1.5rem}.team-statistics h4{color:#1a202c;color:var(--text-primary);font-size:1.1rem;font-weight:600;margin-bottom:1rem}.stats-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.stat-item-faculty{align-items:center;background:linear-gradient(135deg,var(--primary-light),var(--primary-color));border-radius:10px;box-shadow:0 4px 12px #0000001a;color:#fff;display:flex;justify-content:space-between;padding:1rem}.stat-item-faculty strong{font-weight:600}.stat-item-faculty span{font-size:1.1rem;font-weight:700}.team-members-section h3{color:#1a202c;color:var(--text-primary);font-size:1.3rem;font-weight:600;margin-bottom:1.5rem}.members-list-faculty{grid-gap:1.5rem;display:grid;gap:1.5rem}.member-card{background:#fff;border:2px solid #e2e8f0;border:2px solid var(--border-light);border-radius:12px;box-shadow:0 2px 8px #0000001a;display:flex;gap:1.5rem;padding:1.5rem;transition:transform .2s,box-shadow .2s}.member-card:hover{box-shadow:0 6px 20px #00000026;transform:translateY(-2px)}.member-avatar{flex-shrink:0;height:80px;position:relative;width:80px}.avatar-fallback,.member-avatar img{border-radius:50%;height:100%;object-fit:cover;width:100%}.avatar-fallback{align-items:center;background:linear-gradient(135deg,var(--primary-light),var(--primary-color));color:#fff;display:flex;font-size:2rem;font-weight:700;justify-content:center}.member-info{flex:1 1}.member-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.member-header h4{color:#1a202c;color:var(--text-primary);font-size:1.2rem;font-weight:600;margin:0}.role-badge{align-items:center;border-radius:20px;display:flex;font-size:.8rem;font-weight:600;gap:.5rem;padding:.25rem .75rem;text-transform:uppercase}.role-badge.leader{background:linear-gradient(135deg,#fbbf24,#f59e0b);color:#fff}.role-badge.member{background:#f7fafc;background:var(--background-light);border:1px solid var(--border-color);color:#4a5568;color:var(--text-secondary)}.member-details{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.detail-row{align-items:center;display:flex;justify-content:space-between;padding:.5rem 0}.detail-row strong{color:#1a202c;color:var(--text-primary);font-size:.9rem;font-weight:600}.detail-row span{color:#4a5568;color:var(--text-secondary);font-size:.9rem;font-weight:500}.modal-footer{background:#f7fafc;background:var(--background-light);border-top:1px solid var(--border-color);display:flex;justify-content:flex-end;padding:1.5rem 2rem}.close-modal-btn-faculty{background:var(--secondary-color);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:.75rem 1.5rem;transition:background-color .2s}.close-modal-btn:hover{background:var(--secondary-dark)}.no-requests{color:#718096;color:var(--text-muted);padding:3rem;text-align:center}.no-requests p{font-size:1.1rem}@media (max-width:768px){.team-details-modal{max-height:95vh;width:95%}.modal-content{padding:1rem}.stats-grid,.team-info-grid{grid-template-columns:1fr}.member-card{flex-direction:column;text-align:center}.member-header{flex-direction:column;gap:.5rem}.member-details{grid-template-columns:1fr}}.faculty-invitations-container{margin:0 auto;max-width:1200px;padding:20px;width:100%}.faculty-invitations-section-header{align-items:center;display:flex;flex-wrap:wrap;gap:15px;justify-content:space-between;margin-bottom:30px}.faculty-invitations-section-header h2{color:#2c3e50;font-size:1.8em;margin:0}.faculty-invitations-controls{align-items:center;display:flex;flex-wrap:wrap;gap:15px}.faculty-invitations-filter-select,.faculty-invitations-search-input{border:2px solid #e0e0e0;border-radius:8px;font-size:.95em;padding:10px 15px;transition:border-color .3s,box-shadow .3s}.faculty-invitations-filter-select:focus,.faculty-invitations-search-input:focus{border-color:#3498db;box-shadow:0 0 0 3px #3498db1a;outline:none}.faculty-invitations-search-input{min-width:250px}.faculty-invitations-filter-select{min-width:150px}.faculty-invitations-refresh-button{align-items:center;background:#27ae60;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:.95em;font-weight:500;gap:8px;padding:10px 16px;transition:all .3s}.faculty-invitations-refresh-button:hover{background:#219a52;box-shadow:0 4px 8px #27ae604d;transform:translateY(-1px)}.faculty-invitations-list{display:flex;flex-direction:column;gap:25px}.faculty-invitations-team-invitation{background:#fff;border:1px solid #e0e0e0;border-left:4px solid #3498db;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:25px;transition:all .3s}.faculty-invitations-team-invitation:hover{box-shadow:0 4px 16px #00000026;transform:translateY(-2px)}.faculty-invitations-invite-content{margin-bottom:20px}.faculty-invitations-invite-header{align-items:center;display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;margin-bottom:20px}.faculty-invitations-invite-header h3{color:#2c3e50;font-size:1.4em;font-weight:600;margin:0}.faculty-invitations-team-basic-info{background:#f8f9fb;border:1px solid #e8f1f8;border-radius:10px;margin-bottom:18px;padding:18px}.faculty-invitations-team-basic-info p{color:#555;font-size:.95em;line-height:1.5;margin:10px 0}.faculty-invitations-team-basic-info p strong{color:#2c3e50;font-weight:600}.faculty-invitations-project-info{background:#e8f5e8;border:1px solid #d4edda;border-radius:10px;margin-bottom:18px;padding:18px}.faculty-invitations-project-info p{color:#2d5a2d;font-size:.95em;line-height:1.6;margin:10px 0}.faculty-invitations-project-info p strong{color:#1a4d1a;font-weight:600}.faculty-invitations-request-info{background:#fff3e0;border:1px solid #ffe0b3;border-radius:10px;padding:18px}.faculty-invitations-request-info p{color:#8b5a00;font-size:.95em;line-height:1.5;margin:10px 0}.faculty-invitations-request-info p strong{color:#5d3800;font-weight:600}.faculty-invitations-status-badge{border-radius:20px;font-size:.85em;font-weight:600;letter-spacing:.5px;padding:6px 14px;text-transform:uppercase}.faculty-invitations-status-badge.pending{background:#f39c12;color:#fff}.faculty-invitations-status-badge.accepted{background:#27ae60;color:#fff}.faculty-invitations-status-badge.rejected{background:#e74c3c;color:#fff}.faculty-invitations-invite-actions{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.faculty-invitations-action-button{border:none;border-radius:8px;cursor:pointer;font-size:.95em;font-weight:500;letter-spacing:.5px;padding:12px 24px;text-transform:uppercase;transition:all .3s}.faculty-invitations-action-button.faculty-invitations-accept{background:#27ae60;color:#fff}.faculty-invitations-action-button.faculty-invitations-accept:hover{background:#219a52;box-shadow:0 4px 8px #27ae604d;transform:translateY(-1px)}.faculty-invitations-action-button.faculty-invitations-decline{background:#e74c3c;color:#fff}.faculty-invitations-action-button.faculty-invitations-decline:hover{background:#c0392b;box-shadow:0 4px 8px #e74c3c4d;transform:translateY(-1px)}.faculty-invitations-action-button.faculty-invitations-details{background:#3498db;color:#fff}.faculty-invitations-action-button.faculty-invitations-details:hover{background:#2980b9;box-shadow:0 4px 8px #3498db4d;transform:translateY(-1px)}.faculty-invitations-no-invitations{background:#f8f9fa;border:2px dashed #dee2e6;border-radius:12px;color:#666;padding:80px 20px;text-align:center}.faculty-invitations-no-invitations p{color:#6c757d;font-size:1.2em;margin:0}.faculty-invitations-loading-state{background:#f8f9fa;border-radius:12px;color:#666;padding:80px 20px;text-align:center}.faculty-invitations-loading-state p{color:#6c757d;font-size:1.1em;margin:0}@media (max-width:768px){.faculty-invitations-controls,.faculty-invitations-section-header{align-items:stretch;flex-direction:column}.faculty-invitations-filter-select,.faculty-invitations-search-input{min-width:auto;width:100%}.faculty-invitations-invite-header{align-items:flex-start;flex-direction:column}.faculty-invitations-invite-actions{align-items:stretch;flex-direction:column}.faculty-invitations-action-button{text-align:center;width:100%}}@media (max-width:480px){.faculty-invitations-container{padding:15px}.faculty-invitations-team-invitation{padding:20px 15px}.faculty-invitations-project-info,.faculty-invitations-request-info,.faculty-invitations-team-basic-info{padding:15px}}.invitation-header-actions{align-items:center;display:flex;gap:10px}.team-expand-toggle{align-items:center;background:#f8f9fa;border:1px solid #dee2e6;border-radius:6px;color:#495057;cursor:pointer;display:flex;font-size:12px;gap:5px;padding:6px 12px;transition:all .2s ease}.team-expand-toggle:hover{background:#e9ecef;border-color:#adb5bd}.team-members-detailed-view{background:#f8f9fa;border-left:4px solid #007bff;border-radius:8px;margin-top:20px;padding:20px}.team-stats-summary{margin-bottom:20px}.team-stats-summary h4{color:#495057;font-size:16px;margin-bottom:10px}.stats-grid-inline{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:15px}.stat-item-inline{align-items:center;background:#fff;border:1px solid #e3e6ea;border-radius:6px;display:flex;justify-content:space-between;padding:8px 12px}.stat-item-inline strong{color:#495057;font-size:13px}.stat-item-inline span{color:#007bff;font-size:14px;font-weight:600}.team-members-detailed-section h4{border-bottom:2px solid #dee2e6;color:#495057;font-size:16px;margin-bottom:15px;padding-bottom:8px}.members-grid-inline{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(350px,1fr))}.member-card-inline{background:#fff;border:1px solid #e3e6ea;border-radius:8px;padding:15px;transition:all .2s ease}.member-card-inline:hover{border-color:#007bff;box-shadow:0 2px 8px #0000001a}.member-header-inline{align-items:center;border-bottom:1px solid #f1f3f4;display:flex;gap:12px;margin-bottom:12px;padding-bottom:10px}.member-avatar-inline{border-radius:50%;flex-shrink:0;height:40px;overflow:hidden;position:relative;width:40px}.member-avatar-inline img{height:100%;object-fit:cover;width:100%}.avatar-fallback-inline{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;font-size:16px;font-weight:700;height:100%;justify-content:center;width:100%}.member-basic-info h5{color:#2c3e50;font-size:14px;font-weight:600;margin:0 0 4px}.role-badge-inline{align-items:center;border-radius:12px;display:inline-flex;font-size:11px;font-weight:600;gap:4px;letter-spacing:.5px;padding:2px 8px;text-transform:uppercase}.role-badge-inline.leader{background:#ffeaa7;color:#d63031}.role-badge-inline.member{background:#e3f2fd;color:#1976d2}.member-details-grid{grid-gap:6px;display:grid;gap:6px;grid-template-columns:1fr}.detail-row-inline{align-items:center;display:flex;font-size:13px;justify-content:space-between;padding:4px 0}.detail-row-inline strong{color:#666;font-weight:500;min-width:120px}.detail-row-inline span{color:#2c3e50;flex:1 1;font-weight:500;text-align:right}.cgpa-good{color:#27ae60!important;font-weight:600}.cgpa-average{color:#f39c12!important;font-weight:600}.cgpa-low{color:#e74c3c!important;font-weight:600}.credits-sufficient{color:#27ae60!important;font-weight:600}.credits-insufficient{color:#e74c3c!important;font-weight:600}@media (max-width:768px){.members-grid-inline,.stats-grid-inline{grid-template-columns:1fr}.member-header-inline{gap:8px}.detail-row-inline,.member-header-inline{align-items:flex-start;flex-direction:column}.detail-row-inline{gap:2px}.detail-row-inline span{text-align:left}}.team-details-loading{align-items:center;color:#666;display:flex;font-style:italic;justify-content:center;padding:20px}.faculty-invitations-action-button{transition:all .2s ease}.faculty-invitations-action-button:hover{box-shadow:0 2px 4px #0000001a;transform:translateY(-1px)}.supervised-teams-main-container{background:linear-gradient(135deg,#f8fafc,#e2e8f0);color:#1e293b;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.6;min-height:100vh;padding:2rem}.supervised-teams-loading-wrapper{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border:1px solid #e2e8f0cc;border-radius:12px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;display:flex;height:400px;justify-content:center}.supervised-teams-loading-wrapper p{color:#64748b;font-size:1.1rem;font-weight:500;margin:0}.supervised-teams-page-header{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border:1px solid #e2e8f0cc;border-radius:12px;box-shadow:0 1px 3px 0 #0000001a,0 1px 2px 0 #0000000f;display:flex;justify-content:space-between;margin-bottom:2rem;padding:1.5rem 2rem}.supervised-teams-page-header h2{color:#1e293b;font-size:1.875rem;font-weight:700;letter-spacing:-.025em;margin:0}.supervised-teams-header-actions{align-items:center;display:flex;gap:1rem}.supervised-teams-refresh-btn{align-items:center;background:#3b82f6;border:none;border-radius:8px;box-shadow:0 1px 2px 0 #0000000d;color:#fff;cursor:pointer;display:inline-flex;font-size:.875rem;font-weight:600;gap:.5rem;padding:.75rem 1.5rem;text-decoration:none;transition:all .15s ease}.supervised-teams-refresh-btn:hover{background:#2563eb;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;transform:translateY(-1px)}.supervised-teams-refresh-btn:focus{box-shadow:0 0 0 3px #3b82f680;outline:2px solid #0000;outline-offset:2px}.supervised-teams-refresh-btn:active{transform:translateY(0)}.supervised-teams-empty-state{align-items:center;display:flex;justify-content:center;min-height:400px;padding:2rem}.supervised-teams-no-data{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border:1px solid #e2e8f0cc;border-radius:12px;box-shadow:0 1px 3px 0 #0000001a,0 1px 2px 0 #0000000f;max-width:500px;padding:3rem 2rem;text-align:center;width:100%}.supervised-teams-no-data h3{color:#1e293b;font-size:1.5rem;font-weight:700;letter-spacing:-.025em;margin-bottom:1rem}.supervised-teams-no-data p{color:#64748b;font-size:1rem;line-height:1.6;margin-bottom:.5rem}.supervised-teams-grid-layout{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(380px,1fr));margin-bottom:2rem}.supervised-teams-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border:1px solid #e2e8f0cc;border-radius:12px;box-shadow:0 1px 3px 0 #0000001a,0 1px 2px 0 #0000000f;overflow:hidden;padding:1.5rem;position:relative;transition:all .15s ease}.supervised-teams-card:before{background:#3b82f6;content:"";height:3px;left:0;position:absolute;right:0;top:0}.supervised-teams-card:hover{box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;transform:translateY(-2px)}.supervised-teams-card-header{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between;margin-bottom:1rem}.supervised-teams-title-section{flex:1 1;min-width:0}.supervised-teams-title-section h3{word-wrap:break-word;color:#1e293b;font-size:1.25rem;font-weight:700;letter-spacing:-.025em;margin:0 0 .5rem}.supervised-teams-status-badge{align-items:center;border-radius:9999px;display:inline-flex;font-size:.75rem;font-weight:600;letter-spacing:.05em;padding:.25rem .75rem;text-transform:uppercase;white-space:nowrap}.supervised-teams-status-active{background:#22c55e1a;border:1px solid #22c55e33;color:#15803d}.supervised-teams-status-recruiting{background:#3b82f61a;border:1px solid #3b82f633;color:#1d4ed8}.supervised-teams-status-inactive{background:#9ca3af1a;border:1px solid #9ca3af33;color:#374151}.supervised-teams-status-completed{background:#a855f71a;border:1px solid #a855f733;color:#7c3aed}.supervised-teams-visibility-toggle{align-items:center;border:1px solid;border-radius:8px;cursor:pointer;display:inline-flex;font-size:.8rem;font-weight:600;gap:.5rem;padding:.5rem 1rem;transition:all .15s ease;white-space:nowrap}.supervised-teams-visible{background:#22c55e1a;border-color:#22c55e33;color:#15803d}.supervised-teams-hidden{background:#ef44441a;border-color:#ef444433;color:#dc2626}.supervised-teams-visibility-toggle:hover{box-shadow:0 2px 4px -1px #0000000f;transform:translateY(-1px)}.supervised-teams-visibility-toggle:focus{box-shadow:0 0 0 3px #3b82f680;outline:2px solid #0000;outline-offset:2px}.supervised-teams-info-section{margin-bottom:1.5rem}.supervised-teams-info-row{align-items:center;display:flex;font-size:.875rem;gap:1rem;justify-content:space-between;margin-bottom:.75rem}.supervised-teams-info-row:last-child{margin-bottom:0}.supervised-teams-info-row strong{color:#374151;flex-shrink:0;font-weight:600}.supervised-teams-info-row span{color:#64748b;text-align:right;word-break:break-word}.supervised-teams-project-info{background:#6366f10d;border:1px solid #6366f11a;border-radius:8px;margin-top:1rem;padding:1rem}.supervised-teams-project-info strong{color:#4338ca;display:block;font-weight:600;margin-bottom:.5rem}.supervised-teams-project-info p{color:#64748b;line-height:1.5;margin:0}.supervised-teams-members-preview{margin-bottom:1.5rem}.supervised-teams-members-preview h5{color:#374151;font-size:1rem;font-weight:600;margin-bottom:.75rem}.supervised-teams-members-list{display:flex;flex-direction:column;gap:.75rem}.supervised-teams-member-preview{background:#f8fafccc;border:1px solid #e2e8f099;border-radius:8px;gap:.75rem;padding:.75rem;transition:all .15s ease}.supervised-teams-member-preview:hover{background:#f1f5f9e6;border-color:#e2e8f0cc;transform:translateX(4px)}.supervised-teams-member-avatar{border-radius:50%;flex-shrink:0;height:40px;overflow:hidden;position:relative;width:40px}.supervised-teams-member-avatar img{height:100%;object-fit:cover;width:100%}.supervised-teams-avatar-fallback{align-items:center;background:#3b82f6;color:#fff;display:flex;font-size:1rem;font-weight:600;height:100%;justify-content:center;width:100%}.supervised-teams-member-info{display:flex;flex:1 1;flex-direction:column;gap:.25rem;min-width:0}.supervised-teams-member-name{word-wrap:break-word;color:#1e293b;font-size:.875rem;font-weight:600}.supervised-teams-member-role{align-items:center;border:1px solid;border-radius:9999px;display:inline-flex;font-size:.75rem;font-weight:500;gap:.25rem;padding:.2rem .5rem;width:fit-content}.supervised-teams-role-leader{background:#f59e0b1a;border-color:#f59e0b33;color:#d97706}.supervised-teams-role-member{background:#6366f11a;border-color:#6366f133;color:#4338ca}.supervised-teams-member-info small{color:#64748b;font-size:.75rem}.supervised-teams-card-actions{display:flex;gap:.75rem;margin-bottom:1rem}.supervised-teams-action-btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:inline-flex;flex:1 1;font-size:.875rem;font-weight:600;gap:.5rem;justify-content:center;min-height:44px;padding:.75rem 1rem;text-decoration:none;transition:all .15s ease}.supervised-teams-view-details{background:#3b82f6;box-shadow:0 1px 2px 0 #0000000d;color:#fff}.supervised-teams-view-details:hover{background:#2563eb;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;transform:translateY(-1px)}.supervised-teams-change-status{background:#10b981;box-shadow:0 1px 2px 0 #0000000d;color:#fff}.supervised-teams-change-status:hover{background:#059669;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;transform:translateY(-1px)}.supervised-teams-action-btn:focus{box-shadow:0 0 0 3px #3b82f680;outline:2px solid #0000;outline-offset:2px}.supervised-teams-action-btn:active{transform:translateY(0)}.supervised-teams-supervision-info{border-top:1px solid #e2e8f099;padding-top:1rem}.supervised-teams-supervision-info small{color:#64748b;font-size:.8rem;line-height:1.4}.supervised-teams-modal-overlay,.supervised-teams-status-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000080;bottom:0;display:flex;justify-content:center;left:0;overflow-y:auto;padding:1rem;position:fixed;right:0;top:0;z-index:1000}.supervised-teams-modal,.supervised-teams-status-modal{background:#fff;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;margin:auto;max-height:calc(100vh - 2rem);max-width:800px;overflow-y:auto;width:100%}.supervised-teams-modal-header{align-items:center;background:#f8fafc;border-bottom:1px solid #e2e8f0;border-radius:12px 12px 0 0;display:flex;justify-content:space-between;padding:1.5rem 2rem}.supervised-teams-modal-header h3{color:#1e293b;font-size:1.5rem;font-weight:700;letter-spacing:-.025em;margin:0}.supervised-teams-modal-close-btn{align-items:center;background:none;border:none;border-radius:50%;color:#64748b;cursor:pointer;display:flex;font-size:1.5rem;height:40px;justify-content:center;padding:.5rem;transition:all .15s ease;width:40px}.supervised-teams-modal-close-btn:hover{background:#ef44441a;color:#dc2626}.supervised-teams-modal-close-btn:focus{box-shadow:0 0 0 3px #3b82f680;outline:2px solid #0000;outline-offset:2px}.supervised-teams-modal-content{padding:2rem}.supervised-teams-overview-stats{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:2rem}.supervised-teams-stat-item{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;display:flex;flex-direction:column;gap:.5rem;padding:1rem}.supervised-teams-stat-item strong{color:#374151;font-size:.875rem;font-weight:600}.supervised-teams-stat-item span{color:#64748b;font-size:1.25rem;font-weight:700}.supervised-teams-members-detailed{margin-bottom:2rem}.supervised-teams-members-detailed h4{color:#1e293b;font-size:1.25rem;font-weight:700;letter-spacing:-.025em;margin-bottom:1rem}.supervised-teams-member-detailed-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:1rem;padding:1.5rem}.supervised-teams-member-header{align-items:flex-start;display:flex;gap:1rem;margin-bottom:1rem}.supervised-teams-member-title{flex:1 1}.supervised-teams-member-title h5{color:#1e293b;font-size:1.125rem;font-weight:600;margin:0 0 .5rem}.supervised-teams-role-badge{align-items:center;border:1px solid;border-radius:9999px;display:inline-flex;font-size:.8rem;font-weight:600;gap:.25rem;padding:.3rem .8rem}.supervised-teams-member-details{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.supervised-teams-detail-row{align-items:center;border-bottom:1px solid #e2e8f080;display:flex;justify-content:space-between;padding:.5rem 0}.supervised-teams-detail-row strong{color:#374151;font-size:.875rem;font-weight:600}.supervised-teams-detail-row span{color:#64748b;font-size:.875rem}.supervised-teams-detail-row:last-child{border-bottom:none}.supervised-teams-project-details{background:#6366f10d;border:1px solid #6366f11a;border-radius:8px;margin-bottom:1rem;padding:1.5rem}.supervised-teams-project-details h4{color:#4338ca;font-size:1.125rem;font-weight:700;margin-bottom:1rem}.supervised-teams-project-details p{color:#64748b;line-height:1.6;margin:0}.supervised-teams-modal-footer{background:#f8fafc;border-radius:0 0 12px 12px;border-top:1px solid #e2e8f0;display:flex;gap:1rem;justify-content:flex-end;padding:1.5rem 2rem}.supervised-teams-cancel-btn,.supervised-teams-close-modal-btn,.supervised-teams-update-btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:inline-flex;font-size:.875rem;font-weight:600;justify-content:center;min-height:44px;padding:.75rem 1.5rem;transition:all .15s ease}.supervised-teams-cancel-btn,.supervised-teams-close-modal-btn{background:#fff;border:1px solid #d1d5db;color:#475569}.supervised-teams-update-btn{background:#10b981;box-shadow:0 1px 2px 0 #0000000d;color:#fff}.supervised-teams-update-btn:disabled{background:#d1d5db;box-shadow:none;color:#9ca3af;cursor:not-allowed}.supervised-teams-cancel-btn:hover,.supervised-teams-close-modal-btn:hover{background:#f8fafc;border-color:#9ca3af}.supervised-teams-update-btn:hover:not(:disabled){background:#059669;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;transform:translateY(-1px)}.supervised-teams-cancel-btn:focus,.supervised-teams-close-modal-btn:focus,.supervised-teams-update-btn:focus{box-shadow:0 0 0 3px #3b82f680;outline:2px solid #0000;outline-offset:2px}.supervised-teams-form-group{margin-bottom:1.5rem}.supervised-teams-form-group label{color:#374151;display:block;font-size:.875rem;font-weight:600;margin-bottom:.5rem}.supervised-teams-form-group select,.supervised-teams-form-group textarea{background:#fff;border:1px solid #d1d5db;border-radius:8px;font-size:.875rem;padding:.75rem;transition:all .15s ease;width:100%}.supervised-teams-form-group select:focus,.supervised-teams-form-group textarea:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.supervised-teams-form-group textarea{line-height:1.5;min-height:80px;resize:vertical}.supervised-teams-status-descriptions{background:#6366f10d;border:1px solid #6366f11a;border-radius:8px;margin-top:1rem;padding:1rem}.supervised-teams-status-descriptions h5{color:#4338ca;font-size:1rem;font-weight:600;margin-bottom:.75rem}.supervised-teams-status-descriptions ul{margin:0;padding-left:1.5rem}.supervised-teams-status-descriptions li{color:#64748b;line-height:1.5;margin-bottom:.5rem}.supervised-teams-text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.supervised-teams-sr-only{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}@media (max-width:1024px){.supervised-teams-grid-layout{grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.supervised-teams-overview-stats{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}}@media (max-width:768px){.supervised-teams-main-container{padding:1rem}.supervised-teams-grid-layout{gap:1rem;grid-template-columns:1fr}.supervised-teams-page-header{align-items:stretch;flex-direction:column;gap:1rem;padding:1.25rem 1.5rem}.supervised-teams-page-header h2{font-size:1.5rem;text-align:center}.supervised-teams-header-actions{justify-content:center}.supervised-teams-card-actions{flex-direction:column}.supervised-teams-card-header{align-items:flex-start;flex-direction:column;gap:.75rem}.supervised-teams-info-row{align-items:flex-start;flex-direction:column;gap:.25rem}.supervised-teams-info-row span{text-align:left}.supervised-teams-member-details,.supervised-teams-overview-stats{grid-template-columns:1fr}.supervised-teams-modal,.supervised-teams-status-modal{border-radius:8px;margin:.5rem;max-height:calc(100vh - 1rem)}.supervised-teams-modal-header{border-radius:8px 8px 0 0;padding:1.25rem 1.5rem}.supervised-teams-modal-content{padding:1.5rem}.supervised-teams-modal-footer{border-radius:0 0 8px 8px;flex-direction:column-reverse;padding:1.25rem 1.5rem}.supervised-teams-modal-footer button{width:100%}}@media (max-width:480px){.supervised-teams-main-container{padding:.75rem}.supervised-teams-card{padding:1.25rem}.supervised-teams-page-header{padding:1rem 1.25rem}.supervised-teams-modal-content,.supervised-teams-modal-footer,.supervised-teams-modal-header{padding:1rem}.supervised-teams-modal-header h3{font-size:1.25rem}.supervised-teams-detail-row{align-items:flex-start;flex-direction:column;gap:.25rem;padding:.75rem 0}.supervised-teams-member-header{align-items:flex-start;flex-direction:column;gap:.75rem}.supervised-teams-visibility-toggle{font-size:.75rem;padding:.4rem .8rem}.supervised-teams-status-badge{font-size:.7rem;padding:.2rem .6rem}}@media (prefers-contrast:high){.supervised-teams-card{border:2px solid #000}.supervised-teams-status-badge{border-width:2px}.supervised-teams-action-btn{border:2px solid}}@media (prefers-reduced-motion:reduce){.supervised-teams-action-btn,.supervised-teams-card,.supervised-teams-member-preview,.supervised-teams-refresh-btn,.supervised-teams-visibility-toggle{transition:none}.supervised-teams-action-btn:hover,.supervised-teams-card:hover,.supervised-teams-refresh-btn:hover{transform:none}}@media print{.supervised-teams-main-container{background:#fff;padding:1rem}.supervised-teams-action-btn,.supervised-teams-refresh-btn,.supervised-teams-visibility-toggle{display:none}.supervised-teams-card{border:1px solid #000;box-shadow:none;break-inside:avoid;page-break-inside:avoid}.supervised-teams-modal-overlay,.supervised-teams-status-modal-overlay{display:none}}.faculty-inline-notification{animation:slideInRight .3s ease-out;border-radius:8px;box-shadow:0 4px 12px #00000026;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;max-width:400px;min-width:300px;padding:16px;position:fixed;right:20px;top:20px;z-index:1000}.faculty-inline-notification.success{background-color:#d4edda;border:1px solid #c3e6cb;color:#155724}.faculty-inline-notification.error{background-color:#f8d7da;border:1px solid #f5c6cb;color:#721c24}.faculty-inline-notification.info{background-color:#d1ecf1;border:1px solid #bee5eb;color:#0c5460}.faculty-inline-notification.warning{background-color:#fff3cd;border:1px solid #ffeaa7;color:#856404}.faculty-notification-content{align-items:flex-start;display:flex;gap:12px;justify-content:space-between}.faculty-notification-message{flex:1 1;font-size:14px;line-height:1.4}.faculty-notification-close{align-items:center;background:none;border:none;cursor:pointer;display:flex;font-size:18px;font-weight:700;height:20px;justify-content:center;opacity:.7;padding:0;transition:opacity .2s ease;width:20px}.faculty-notification-close:hover{opacity:1}@media (max-width:768px){.faculty-inline-notification{left:10px;max-width:none;min-width:auto;right:10px;top:10px}}.remove-member-btn-faculty{background-color:#ef4444;border:none;border-radius:4px;color:#fff;cursor:pointer;display:inline-block;font-size:12px;padding:8px 12px}.remove-member-btn-faculty:hover{background-color:#dc2626}.supervised-teams-member-preview{align-items:center;border-radius:4px;display:flex;justify-content:space-between;margin-bottom:4px;padding:8px}.remove-member-btn-small{align-items:center;background:#ef4444;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:12px;height:24px;justify-content:center;width:24px}.remove-member-btn-small:hover{background:#dc2626}.phase-modal-overlay{align-items:center;background-color:#000000b3;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.phase-modal{background:#fff;border-radius:12px;box-shadow:0 10px 30px #0000004d;max-height:90vh;max-width:600px;overflow-y:auto;width:90%}.phase-modal-header{align-items:center;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;padding:1.5rem}.phase-option{border:2px solid #e2e8f0;border-radius:8px;cursor:pointer;margin-bottom:.5rem;padding:1rem;transition:all .2s ease}.phase-option.selected{background-color:#eff6ff;border-color:#3b82f6}.phase-btn-update{background-color:#10b981}.phase-btn-cancel,.phase-btn-update{align-items:center;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;gap:.5rem;padding:.75rem 1.5rem}.phase-btn-cancel{background-color:#6b7280}.phase-progression-bar{margin-bottom:10px}.phase-steps{align-items:center;display:flex;justify-content:space-between;margin-bottom:5px}.phase-step-container{align-items:center;display:flex;flex:1 1}.phase-step{align-items:center;border:2px solid #0000;border-radius:50%;color:#fff;display:flex;font-size:12px;font-weight:700;height:30px;justify-content:center;width:30px}.phase-step.completed{border-color:#10b981}.phase-step.current{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f633}.phase-step.pending{background-color:#e5e7eb!important;border-color:#d1d5db;color:#6b7280}.phase-connector{background-color:#e5e7eb;flex:1 1;height:2px;margin:0 5px}.phase-connector.completed{background-color:#10b981}.phase-labels{display:flex;justify-content:space-between;margin-top:5px}.phase-label-small{color:#6b7280;flex:1 1;font-size:10px;text-align:center}.current-phase-section{text-align:center}.phase-badge.final{cursor:not-allowed;opacity:.8}.advance-indicator{color:#10b981;font-weight:700}.final-indicator{color:#10b981;margin-left:5px}.phase-instruction{color:#f59e0b}.phase-complete,.phase-instruction{display:block;font-weight:500;margin-top:5px}.phase-complete{color:#10b981}.phase-status-message{margin-top:8px}.phase-badge{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:2px solid #0000;border-radius:20px;box-shadow:0 2px 4px #0000001a;color:#fff;display:inline-flex;font-size:.85em;font-weight:600;letter-spacing:.5px;padding:6px 12px;text-transform:uppercase;transition:all .3s ease}.phase-badge.clickable{animation:pulse-glow 2s infinite;cursor:pointer;position:relative}@keyframes pulse-glow{0%{box-shadow:0 2px 4px #0000001a,0 0 0 0 #667eea66}50%{box-shadow:0 4px 8px #00000026,0 0 0 8px #667eea1a}to{box-shadow:0 2px 4px #0000001a,0 0 0 0 #667eea66}}.phase-badge.clickable:hover{background:linear-gradient(135deg,#5a67d8,#6b46c1);border-color:#4f46e5;box-shadow:0 6px 12px #0003;transform:translateY(-2px)}.phase-badge.phase-A{background:linear-gradient(135deg,#f093fb,#f5576c)}.phase-badge.phase-A.clickable:hover{background:linear-gradient(135deg,#ec4899,#ef4444)}.phase-badge.phase-B{background:linear-gradient(135deg,#4facfe,#00f2fe)}.phase-badge.phase-B.clickable:hover{background:linear-gradient(135deg,#3b82f6,#06b6d4)}.phase-badge.phase-C{background:linear-gradient(135deg,#43e97b,#38f9d7)}.phase-badge.phase-C.clickable:hover{background:linear-gradient(135deg,#10b981,#14b8a6)}.phase-badge.clickable:after{animation:rotate-hint 2s ease-in-out infinite;content:"↻";font-size:.9em;margin-left:6px;opacity:.8}@keyframes rotate-hint{0%,to{opacity:.8;transform:rotate(0deg)}50%{opacity:1;transform:rotate(180deg)}}.phase-badge.clickable:active{box-shadow:0 2px 4px #0000001a;transform:translateY(0)}.phase-badge.updating{animation:none;background:linear-gradient(135deg,#9ca3af,#6b7280);cursor:wait}.phase-badge.updating:after{display:none}.phase-badge.clickable:before{background:#000c;border-radius:4px;bottom:-30px;color:#fff;content:"Click to change phase";font-size:.7em;left:50%;opacity:0;padding:4px 8px;pointer-events:none;position:absolute;transform:translateX(-50%);transition:opacity .3s ease;white-space:nowrap;z-index:1000}.phase-badge.clickable:hover:before{opacity:1}@media (max-width:768px){.phase-badge{font-size:.9em;padding:8px 14px}.phase-badge.clickable:before{display:none}.phase-badge.clickable:after{animation:bounce 1.5s ease-in-out infinite;content:"👆"}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}.phase-info-container{align-items:flex-start;display:flex;flex-direction:column;gap:8px}.phase-timing-info{background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;color:#6b7280;display:flex;flex-direction:column;font-size:.75rem;gap:4px;min-width:200px;padding:8px 12px}.phase-duration-info,.phase-last-updated,.phase-start-info{align-items:center;display:flex;justify-content:space-between}.phase-label{color:#374151;font-weight:500}.phase-date,.phase-duration,.phase-update-date{color:#1f2937;font-weight:600}.phase-history-preview{margin-top:12px}.phase-history-details summary{color:#6366f1;cursor:pointer;font-size:.85rem;font-weight:500}.phase-history-details summary:hover{color:#4f46e5}.phase-history-list{display:flex;flex-direction:column;gap:6px;margin-top:8px}.phase-history-item{align-items:center;background:#f8fafc;border-radius:4px;display:flex;font-size:.8rem;gap:8px;padding:6px 12px}.phase-badge-small{border-radius:4px;color:#fff;font-size:.7rem;font-weight:600;min-width:20px;padding:2px 6px;text-align:center}.phase-dates{color:#374151;font-weight:500}.phase-duration-small{color:#6b7280;font-style:italic}.phase-badge{margin-bottom:4px;position:relative;transition:all .2s ease}.phase-badge:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-1px)}.phase-badge.updating{cursor:wait!important;opacity:.7}@media (max-width:768px){.phase-timing-info{font-size:.7rem;min-width:150px;padding:6px 10px}.phase-history-item{align-items:flex-start;flex-direction:column;gap:4px}}.faculty-team-chat-container{margin:0 auto;max-width:1200px;padding:20px}.faculty-team-chat-header{margin-bottom:30px;text-align:center}.faculty-team-chat-header h2{color:#1f2937;font-size:28px;margin-bottom:8px}.faculty-team-chat-subtitle{color:#6b7280;font-size:16px;margin:0}.faculty-supervised-teams-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));margin-top:20px}.faculty-team-chat-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 2px 10px #00000014;padding:20px;transition:all .3s ease}.faculty-team-chat-card:hover{box-shadow:0 4px 20px #0000001f;transform:translateY(-2px)}.faculty-team-card-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:15px}.faculty-team-card-header h3{color:#1f2937;font-size:18px;font-weight:600;margin:0}.faculty-team-status-badge{border-radius:20px;font-size:12px;font-weight:500;padding:4px 12px;text-transform:capitalize}.faculty-team-status-badge.status-active{background-color:#dcfce7;color:#166534}.faculty-team-status-badge.status-recruiting{background-color:#dbeafe;color:#1d4ed8}.faculty-team-status-badge.status-completed{background-color:#f3e8ff;color:#7c3aed}.faculty-team-info{margin-bottom:20px}.faculty-team-meta{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:15px}.faculty-team-meta span{background-color:#f9fafb;border-radius:6px;color:#6b7280;font-size:14px;padding:6px 10px}.faculty-team-phase{background-color:#fef3c7!important;color:#92400e!important;font-weight:500}.faculty-team-members-preview{align-items:center;display:flex;gap:-8px}.faculty-member-avatar-small{border:2px solid #fff;border-radius:50%;height:32px;margin-left:-8px;overflow:hidden;width:32px}.faculty-member-avatar-small:first-child{margin-left:0}.faculty-member-avatar-small img{height:100%;object-fit:cover;width:100%}.faculty-avatar-fallback-small{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;font-weight:600;height:100%;width:100%}.faculty-avatar-fallback-small,.faculty-more-members{align-items:center;display:flex;font-size:12px;justify-content:center}.faculty-more-members{background-color:#e5e7eb;border:2px solid #fff;border-radius:50%;color:#4b5563;font-weight:500;height:32px;margin-left:-8px;width:32px}.faculty-open-chat-btn{align-items:center;background:linear-gradient(135deg,#3b82f6,#1d4ed8);border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;justify-content:center;padding:12px 20px;transition:all .3s ease;width:100%}.faculty-open-chat-btn:hover{box-shadow:0 4px 12px #3b82f666;transform:translateY(-1px)}.faculty-no-teams-message{color:#6b7280;grid-column:1/-1;padding:60px 20px;text-align:center}.faculty-no-teams-icon{font-size:48px;margin-bottom:16px}.faculty-no-teams-message h3{color:#4b5563;margin-bottom:8px}.faculty-team-chat-modal-overlay{align-items:center;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.faculty-team-chat-modal{background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;display:flex;flex-direction:column;height:80vh;max-height:700px;max-width:900px;overflow:hidden;width:100%}.faculty-team-chat-modal-header{align-items:center;background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff;display:flex;justify-content:space-between;padding:20px 25px}.faculty-modal-header-info h3{font-size:20px;font-weight:600;margin:0 0 8px}.faculty-modal-header-meta{align-items:center;display:flex;flex-wrap:wrap;gap:15px}.faculty-modal-header-meta span{background:#fff3;border-radius:12px;font-size:12px;font-weight:500;padding:4px 10px}.faculty-team-phase-badge{background:#fbbf24!important;color:#92400e!important}.faculty-status-indicator.status-active{background:#10b981!important;color:#fff!important}.faculty-close-modal-btn{background:#fff3;border:none;border-radius:50%;color:#fff;cursor:pointer;font-size:16px;height:40px;transition:all .3s ease;width:40px}.faculty-close-modal-btn:hover{background:#ffffff4d}.faculty-team-members-bar{background-color:#f8fafc;border-bottom:1px solid #e5e7eb;display:flex;gap:12px;overflow-x:auto;padding:15px 25px}.faculty-member-chip{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:20px;display:flex;gap:8px;min-width:fit-content;padding:8px 12px;white-space:nowrap}.faculty-member-avatar-tiny{border-radius:50%;height:24px;overflow:hidden;width:24px}.faculty-member-avatar-tiny img{height:100%;object-fit:cover;width:100%}.faculty-avatar-tiny-fallback{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;font-size:10px;font-weight:600;height:100%;justify-content:center;width:100%}.faculty-member-name-tiny{color:#374151;font-size:12px;font-weight:500}.faculty-leader-crown-tiny{color:#fbbf24;font-size:12px}.faculty-team-chat-messages{background:#f9fafb;flex:1 1;overflow-y:auto;padding:20px}.faculty-loading-messages{align-items:center;color:#6b7280;display:flex;gap:10px;height:200px;justify-content:center}.faculty-no-messages-yet{color:#6b7280;padding:60px 20px;text-align:center}.faculty-empty-chat-icon{color:#d1d5db;font-size:48px;margin-bottom:16px}.faculty-no-messages-yet h4{color:#4b5563;font-size:18px;margin-bottom:8px}.faculty-chat-message{display:flex;gap:12px;margin-bottom:20px}.faculty-chat-message.faculty-message-sent{flex-direction:row-reverse}.faculty-message-avatar{flex-shrink:0}.faculty-supervisor-avatar{background:linear-gradient(135deg,#3b82f6,#1d4ed8);font-size:16px}.faculty-student-avatar,.faculty-supervisor-avatar{align-items:center;border-radius:50%;color:#fff;display:flex;height:40px;justify-content:center;width:40px}.faculty-student-avatar{background:linear-gradient(135deg,#10b981,#059669);font-size:14px;font-weight:600}.faculty-message-content{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;max-width:70%;padding:15px}.faculty-message-sent .faculty-message-content{background:#3b82f6;color:#fff}.faculty-message-header{align-items:center;display:flex;flex-wrap:wrap;gap:8px;margin-bottom:8px}.faculty-sender-name{font-size:14px;font-weight:600}.faculty-message-sent .faculty-sender-name{color:#dbeafe}.faculty-sender-role{border-radius:10px;font-size:11px;font-weight:500;padding:2px 8px}.faculty-sender-role.faculty{background:#3b82f61a;color:#1d4ed8}.faculty-message-sent .faculty-sender-role.faculty{background:#fff3;color:#dbeafe}.faculty-sender-role.student{background:#10b9811a;color:#059669}.faculty-message-time{color:#9ca3af;font-size:11px;margin-left:auto}.faculty-message-sent .faculty-message-time{color:#bfdbfe}.faculty-message-body{line-height:1.5}.faculty-message-text{font-size:14px;margin:0}.faculty-file-message{align-items:center;background:#0000000d;border-radius:8px;display:flex;gap:12px;padding:12px}.faculty-message-sent .faculty-file-message{background:#ffffff1a}.faculty-file-icon{font-size:20px}.faculty-file-info{flex:1 1}.faculty-file-link{color:#3b82f6;font-weight:500;text-decoration:none}.faculty-message-sent .faculty-file-link{color:#dbeafe}.faculty-file-size{color:#6b7280;display:block;margin-top:2px}.faculty-message-sent .faculty-file-size{color:#bfdbfe}.faculty-team-chat-input-area{background:#fff;border-top:1px solid #e5e7eb;padding:20px}.faculty-selected-file-preview{align-items:center;background:#f0f9ff;border:1px solid #bae6fd;border-radius:8px;display:flex;justify-content:space-between;margin-bottom:12px;padding:12px}.faculty-file-preview-info{align-items:center;display:flex;gap:8px}.faculty-file-name{color:#0369a1;font-weight:500}.faculty-file-size{color:#0284c7;font-size:12px}.faculty-remove-file-btn{background:none;border:none;border-radius:4px;color:#dc2626;cursor:pointer;padding:4px}.faculty-remove-file-btn:hover{background:#fee2e2}.faculty-chat-input-container{align-items:flex-end;display:flex;gap:12px}.faculty-input-tools{align-items:center;display:flex;gap:8px}.faculty-file-upload-btn{background:#f3f4f6;border:1px solid #d1d5db;border-radius:8px;color:#6b7280;cursor:pointer;padding:10px;transition:all .3s ease}.faculty-file-upload-btn:hover{background:#e5e7eb;color:#374151}.faculty-message-input{border:1px solid #d1d5db;border-radius:12px;flex:1 1;font-family:inherit;font-size:14px;max-height:120px;min-height:44px;padding:12px 16px;resize:none}.faculty-message-input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.faculty-send-message-btn{align-items:center;background:#3b82f6;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;height:44px;justify-content:center;transition:all .3s ease;width:44px}.faculty-send-message-btn:hover:not(:disabled){background:#1d4ed8;transform:scale(1.05)}.faculty-send-message-btn:disabled{background:#d1d5db;cursor:not-allowed}@media (max-width:768px){.faculty-team-chat-modal{border-radius:0;height:100vh;max-height:none;max-width:none;width:100vw}.faculty-supervised-teams-grid{grid-template-columns:1fr}.faculty-modal-header-meta{gap:8px}.faculty-team-members-bar{gap:8px;padding:12px 20px}.faculty-chat-message{margin-bottom:15px}.faculty-message-content{max-width:85%}}.complete-project-btn{background:linear-gradient(135deg,#10b981,#059669);border:none;border-radius:6px;box-shadow:0 2px 4px #10b9814d;color:#fff;cursor:pointer;font-size:12px;font-weight:600;margin-left:10px;padding:8px 16px;transition:all .3s ease}.complete-project-btn:hover:not(:disabled){background:linear-gradient(135deg,#059669,#047857);box-shadow:0 4px 8px #10b98166;transform:translateY(-1px)}.complete-project-btn:disabled{cursor:not-allowed;opacity:.7;transform:none}.complete-project-btn.completing{background:linear-gradient(135deg,#6b7280,#4b5563)}.phase-badge-container{align-items:center;display:flex;gap:10px}.phase-badge.completed{background:linear-gradient(135deg,#10b981,#059669)!important;border:2px solid #34d399;position:relative}.completion-checkmark{align-items:center;background:#10b981;border-radius:50%;color:#fff;display:flex;font-size:10px;font-weight:700;height:16px;justify-content:center;position:absolute;right:-5px;top:-5px;width:16px}.completion-indicator{color:#10b981;font-weight:700}.project-completed-message{color:#10b981!important;font-weight:600}.phase-final{color:#f59e0b!important;font-weight:600}.phase-step.project-completed{border:3px solid #10b981;position:relative}.phase-duration-small.completed{color:#10b981;font-weight:600}.completion-mark{color:#10b981;font-weight:700;margin-left:4px}.formal-phase-container{background:linear-gradient(135deg,#f8fafc,#e2e8f0);border:2px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;margin:16px 0;padding:24px}.phase-section-title{color:#1e293b;font-size:1.1rem;font-weight:700;letter-spacing:.5px;margin-bottom:20px;text-align:center;text-transform:uppercase}.formal-phase-timeline{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:24px;position:relative}.formal-phase-step-container{flex:1 1;flex-direction:column}.formal-phase-step,.formal-phase-step-container{align-items:center;display:flex;position:relative}.formal-phase-step{background:#fff;border:3px solid #e2e8f0;border-radius:50%;box-shadow:0 2px 4px #0000001a;height:60px;justify-content:center;margin-bottom:12px;transition:all .3s ease;width:60px}.formal-phase-step.completed{background:linear-gradient(135deg,#10b981,#059669);border-color:#059669;box-shadow:0 4px 12px #10b9814d;color:#fff}.formal-phase-step.current{animation:currentPhasePulse 2s infinite;background:linear-gradient(135deg,#3b82f6,#1d4ed8);border-color:#1d4ed8;box-shadow:0 4px 12px #3b82f64d;color:#fff}.formal-phase-step.pending{background:#f1f5f9;border-color:#cbd5e1;color:#64748b}.formal-phase-step.project-completed{background:linear-gradient(135deg,#8b5cf6,#7c3aed);border-color:#7c3aed;box-shadow:0 4px 12px #8b5cf64d;color:#fff}@keyframes currentPhasePulse{0%,to{box-shadow:0 4px 12px #3b82f64d;transform:scale(1)}50%{box-shadow:0 6px 20px #3b82f666;transform:scale(1.05)}}.phase-number{font-size:24px;font-weight:800;letter-spacing:1px}.completion-badge{align-items:center;background:#10b981;border:2px solid #fff;border-radius:50%;color:#fff;display:flex;font-size:12px;font-weight:700;height:24px;justify-content:center;position:absolute;right:-8px;top:-8px;width:24px}.formal-phase-info{min-height:50px;text-align:center}.phase-name{display:block;font-size:14px;font-weight:700;letter-spacing:.5px;margin-bottom:4px;text-transform:uppercase}.phase-description{color:#64748b;display:block;font-size:12px;font-weight:500}.formal-phase-connector{background:#e2e8f0;height:3px;left:60%;position:absolute;right:-40%;top:30px;transition:all .3s ease}.formal-phase-connector.completed{background:linear-gradient(90deg,#10b981,#059669);box-shadow:0 2px 4px #10b98133}.formal-phase-action-section{border-top:2px solid #e2e8f0;padding-top:20px}.current-phase-display{display:flex;justify-content:center}.phase-status-card{box-shadow:0 2px 8px #00000014;max-width:400px;padding:20px;width:100%}.formal-phase-badge,.phase-status-card{background:#fff;border:2px solid #e2e8f0;border-radius:12px}.formal-phase-badge{cursor:default;overflow:hidden;padding:16px 20px;position:relative;transition:all .3s ease}.formal-phase-badge.actionable{background:linear-gradient(135deg,#eff6ff,#dbeafe);border-color:#3b82f6;cursor:pointer}.formal-phase-badge.actionable:hover{border-color:#1d4ed8;box-shadow:0 8px 25px #3b82f633;transform:translateY(-2px)}.formal-phase-badge.updating{background:linear-gradient(135deg,#f1f5f9,#e2e8f0);border-color:#94a3b8;cursor:wait}.badge-content{text-align:center}.badge-label{color:#64748b;font-size:12px;font-weight:600;letter-spacing:1px;text-transform:uppercase}.badge-label,.badge-phase{display:block;margin-bottom:4px}.badge-phase{color:#1e293b;font-size:20px;font-weight:800}.badge-subtitle{color:#475569;display:block;font-size:14px;font-weight:500}.advancement-indicator,.completion-indicator,.final-phase-indicator,.updating-indicator{border-top:1px solid #e2e8f0;margin-top:12px;padding-top:12px;text-align:center}.updating-indicator{align-items:center;color:#64748b;display:flex;gap:8px;justify-content:center}.advancement-indicator{color:#059669;cursor:pointer}.advance-text{display:block;font-size:12px;font-weight:600;margin-bottom:4px}.advance-arrow{animation:advanceArrowPulse 1.5s infinite;font-size:16px;font-weight:700}@keyframes advanceArrowPulse{0%,to{transform:translateX(0)}50%{transform:translateX(4px)}}.completion-indicator{color:#7c3aed;font-weight:600}.final-phase-indicator{color:#64748b;font-weight:500}.phase-actions{margin-top:16px;text-align:center}.formal-complete-project-btn{align-items:center;background:linear-gradient(135deg,#10b981,#059669);border:none;border-radius:8px;box-shadow:0 2px 8px #10b98133;color:#fff;cursor:pointer;display:inline-flex;font-weight:600;gap:8px;padding:12px 24px;transition:all .3s ease}.formal-complete-project-btn:hover:not(:disabled){box-shadow:0 4px 15px #10b9814d;transform:translateY(-1px)}.formal-complete-project-btn:disabled{cursor:not-allowed;opacity:.7;transform:none}.formal-complete-project-btn.completing{background:linear-gradient(135deg,#94a3b8,#64748b)}.formal-phase-timing{border-top:1px solid #e2e8f0;display:flex;gap:16px;justify-content:space-between;margin-top:16px;padding-top:16px}.timing-item{flex:1 1;text-align:center}.timing-label{color:#64748b;display:block;font-size:11px;font-weight:600;letter-spacing:.5px;margin-bottom:4px;text-transform:uppercase}.timing-value{color:#1e293b;display:block;font-size:13px;font-weight:700}@media (max-width:768px){.formal-phase-container{margin:12px 0;padding:16px}.formal-phase-timeline{flex-direction:column;gap:16px}.formal-phase-step-container{align-items:center;flex-direction:row;justify-content:flex-start;width:100%}.formal-phase-step{height:50px;margin-bottom:0;margin-right:16px;width:50px}.phase-number{font-size:20px}.formal-phase-info{min-height:auto;text-align:left}.formal-phase-connector{display:none}.formal-phase-timing{flex-direction:column;gap:8px}.timing-item{align-items:center;display:flex;justify-content:space-between;text-align:left}}.unread-teams-indicator{align-items:center;background-color:#fef3c7;border-radius:20px;color:#92400e;display:flex;font-size:12px;gap:8px;margin-top:4px;padding:4px 12px}.unread-badge{background-color:#f59e0b;border-radius:10px;color:#fff;font-size:10px;font-weight:700;min-width:18px;padding:2px 6px;text-align:center}.faculty-team-chat-card.has-unread{border-left:4px solid #f59e0b;box-shadow:0 2px 8px #f59e0b26}.faculty-team-chat-card.has-unread .faculty-team-card-header{background-color:#fffbeb}.team-header-left{align-items:center;display:flex;gap:12px}.team-unread-count{position:relative}.unread-count-badge{animation:pulse-badge 2s infinite;background-color:#ef4444;border-radius:10px;color:#fff;display:inline-block;font-size:11px;font-weight:700;min-width:20px;padding:2px 6px;text-align:center}@keyframes pulse-badge{0%{transform:scale(1)}50%{transform:scale(1.1)}to{transform:scale(1)}}.latest-message-preview{background-color:#f8fafc;border-left:3px solid #e2e8f0;border-radius:6px;margin:8px 0;padding:8px 10px}.message-preview-content{display:flex;gap:6px;margin-bottom:2px}.message-sender{color:#4b5563;font-size:12px;font-weight:600}.message-text{color:#6b7280;flex:1 1;font-size:12px}.message-time{color:#9ca3af;font-size:10px;text-align:right}.faculty-open-chat-btn.has-unread-btn{animation:glow-button 2s ease-in-out infinite alternate;background:linear-gradient(135deg,#f59e0b,#d97706);box-shadow:0 2px 8px #f59e0b4d}@keyframes glow-button{0%{box-shadow:0 2px 8px #f59e0b4d}to{box-shadow:0 4px 16px #f59e0b80}}.faculty-open-chat-btn.has-unread-btn:hover{background:linear-gradient(135deg,#d97706,#b45309);transform:translateY(-1px)}.materials-upload-container{background:#fafafa;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;margin:0 auto;max-width:1200px;min-height:100vh;padding:2rem}.upload-section{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 2px 8px #00000014;margin-bottom:2rem;padding:2.5rem}.upload-section h2{border-bottom:2px solid #f3f4f6;color:#1f2937;font-size:1.875rem;font-weight:600;margin-bottom:2rem;padding-bottom:1rem}.upload-form{gap:1.5rem}.form-group,.upload-form{display:flex;flex-direction:column}.form-group{gap:.5rem}.form-group label{color:#374151;font-size:.875rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.form-group input[type=file],.form-group input[type=text],.form-group select,.form-group textarea{background:#fff;border:2px solid #e5e7eb;border-radius:8px;color:#1f2937;font-size:.875rem;padding:.75rem 1rem;transition:all .2s ease}.form-group input[type=text]:focus,.form-group select:focus,.form-group textarea:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.form-group input.error,.form-group select.error,.form-group textarea.error{border-color:#ef4444;box-shadow:0 0 0 3px #ef44441a}.file-input-container{position:relative}.file-input-container input[type=file]{cursor:pointer;width:100%}.selected-file-info{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;display:flex;gap:.75rem;margin-top:.75rem;padding:1rem}.file-icon{flex-shrink:0;font-size:1.5rem}.file-details{display:flex;flex:1 1;flex-direction:column;gap:.25rem}.file-name{color:#1f2937;font-size:.875rem;font-weight:500}.file-size{color:#6b7280;font-size:.75rem}.remove-file-btn{align-items:center;background:#ef4444;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;flex-shrink:0;height:28px;justify-content:center;transition:background-color .2s ease;width:28px}.remove-file-btn:hover{background:#dc2626}.char-count{color:#6b7280;font-size:.75rem;margin-top:.25rem;text-align:right}.checkbox-group{background:#fafafa;border:1px solid #e5e7eb;border-radius:8px;max-height:200px;overflow-y:auto;padding:1rem}.checkbox-item{align-items:center;cursor:pointer;display:flex;gap:.75rem;padding:.5rem 0;transition:background-color .2s ease}.checkbox-item:hover{background:#f3f4f6;border-radius:4px;margin-left:-.5rem;margin-right:-.5rem;padding-left:.5rem}.checkbox-item input[type=checkbox]{cursor:pointer;height:16px;width:16px}.checkbox-item span{color:#374151;font-size:.875rem}.no-options{color:#6b7280;font-style:italic;padding:1rem;text-align:center}.error-message{font-size:.75rem;font-weight:500;margin-top:.25rem}.upload-button{align-items:center;align-self:flex-start;background:#3b82f6;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:.875rem;font-weight:600;gap:.5rem;justify-content:center;letter-spacing:.5px;min-width:160px;padding:1rem 2rem;text-transform:uppercase;transition:all .2s ease}.upload-button:hover:not(:disabled){background:#2563eb;box-shadow:0 4px 12px #3b82f64d;transform:translateY(-1px)}.upload-button:disabled{background:#9ca3af;box-shadow:none;cursor:not-allowed;transform:none}.materials-list-section{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:2.5rem}.materials-list-section h3{border-bottom:2px solid #f3f4f6;color:#1f2937;font-size:1.5rem;font-weight:600;margin-bottom:1.5rem;padding-bottom:1rem}.no-materials{padding:3rem 1rem}.empty-state{color:#6b7280;text-align:center}.empty-icon{color:#d1d5db;font-size:3rem;margin-bottom:1rem}.empty-state p{font-size:.875rem;margin:.5rem 0}.empty-state p:first-of-type{color:#374151;font-size:1rem;font-weight:600}.materials-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.material-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 1px 3px #0000000f;padding:1.5rem;position:relative;transition:all .2s ease}.material-card:hover{border-color:#3b82f6;box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.material-header{align-items:flex-start;display:flex;gap:1rem;margin-bottom:1rem}.material-icon{align-items:center;background:#f3f4f6;border-radius:8px;display:flex;flex-shrink:0;font-size:2rem;height:48px;justify-content:center;width:48px}.material-info{flex:1 1;min-width:0}.material-info h4{color:#1f2937;font-size:1rem;font-weight:600;line-height:1.4;margin:0 0 .25rem;word-break:break-word}.material-target{background:#f3f4f6;border-radius:4px;color:#6b7280;display:inline-block;font-size:.75rem;font-weight:500;letter-spacing:.5px;padding:.25rem .5rem;text-transform:uppercase}.material-description{color:#4b5563;font-size:.875rem;line-height:1.5;margin-bottom:1rem;word-break:break-word}.material-meta{background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:1rem;padding:.75rem}.material-date,.material-downloads,.material-size{color:#6b7280;font-size:.75rem;font-weight:500}.material-downloads{color:#059669}.material-actions{display:flex;flex-wrap:wrap;gap:.5rem}.action-btn{align-items:center;border:1px solid;border-radius:6px;cursor:pointer;display:flex;font-size:.75rem;font-weight:600;gap:.5rem;justify-content:center;letter-spacing:.5px;min-width:80px;padding:.5rem 1rem;text-decoration:none;text-transform:uppercase;transition:all .2s ease}.view-btn{background:#fff;border-color:#3b82f6;color:#3b82f6}.view-btn:hover{background:#3b82f6;color:#fff}.download-btn{background:#fff;border-color:#059669;color:#059669}.download-btn:hover{background:#059669;color:#fff}.delete-btn{background:#fff;border-color:#ef4444;color:#ef4444}.delete-btn:hover{background:#ef4444;color:#fff}@media (max-width:768px){.materials-upload-container{padding:1rem}.materials-list-section,.upload-section{padding:1.5rem}.materials-list-section h3,.upload-section h2{font-size:1.25rem}.materials-grid{grid-template-columns:1fr}.material-actions{flex-direction:column}.action-btn{min-width:auto}.checkbox-group{max-height:150px}.upload-button{align-self:stretch;justify-content:center}}@media (max-width:480px){.materials-upload-container{padding:.5rem}.materials-list-section,.upload-section{border-radius:8px;padding:1rem}.material-card{padding:1rem}.material-header{flex-direction:column;gap:.75rem}.material-icon{align-self:flex-start}.form-group input,.form-group select,.form-group textarea{font-size:1rem}}.action-btn:focus,.checkbox-item input:focus,.remove-file-btn:focus,.upload-button:focus{outline:2px solid #3b82f6;outline-offset:2px}@media print{.materials-upload-container{background:#fff;box-shadow:none}.materials-list-section,.upload-section{border:1px solid #000;box-shadow:none}.material-actions{display:none}}@media (prefers-contrast:high){.action-btn,.material-card,.upload-button{border-width:2px}}@media (prefers-reduced-motion:reduce){.action-btn,.checkbox-item,.material-card,.remove-file-btn,.upload-button{transition:none}.material-card:hover,.upload-button:hover{transform:none}.spinning{animation:none}}.student-search-container{margin-bottom:15px}.student-search-input{border:1px solid #ddd;border-radius:5px;font-size:14px;padding:10px 15px;transition:border-color .3s ease;width:100%}.student-search-input:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff40;outline:none}.search-results-info{border-radius:4px;font-size:13px;margin-bottom:10px;padding:5px 10px}.no-results,.search-results-info{background-color:#f8f9fa;color:#666}.no-results{border-radius:5px;font-style:italic;padding:15px;text-align:center}.student-selection .checkbox-item{background-color:#fff;border:1px solid #e9ecef;border-radius:8px;margin-bottom:8px;padding:12px;transition:all .2s ease}.student-selection .checkbox-item:hover{background-color:#f8f9fa;border-color:#007bff}.student-selection .checkbox-item input[type=checkbox]:checked+.student-info{color:#007bff;font-weight:500}.student-info{display:inline-block;margin-left:10px}.student-info strong{color:#333}.student-info small{color:#666;font-size:12px}@media (max-width:768px){.student-search-input{font-size:16px}.student-selection .checkbox-item{padding:10px}}.progress-dashboard-main-container{background:linear-gradient(135deg,#f5f7fa,#c3cfe2);min-height:100vh;padding:20px}.progress-dashboard-loading-wrapper{align-items:center;display:flex;justify-content:center;min-height:400px}.progress-dashboard-loading-content{text-align:center}.progress-dashboard-loading-spinner{animation:spin 1s linear infinite;color:#3b82f6;font-size:2rem}.progress-dashboard-header-section{align-items:flex-start;background:#fff;border-radius:12px;box-shadow:0 4px 6px #0000001a;display:flex;justify-content:space-between;margin-bottom:30px;padding:25px}.progress-dashboard-title-area h2.progress-dashboard-main-title{color:#1f2937;font-size:2rem;font-weight:700;margin:0 0 8px}.progress-dashboard-subtitle{color:#6b7280;font-size:1rem;margin:0}.progress-dashboard-refresh-btn{align-items:center;background:#3b82f6;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-weight:500;gap:8px;padding:12px 20px;transition:all .2s}.progress-dashboard-refresh-btn:hover{background:#2563eb;transform:translateY(-1px)}.progress-dashboard-stats-overview{margin-bottom:30px}.progress-stats-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.progress-stat-card{align-items:center;background:#fff;border-radius:12px;box-shadow:0 4px 6px #0000001a;display:flex;gap:20px;padding:25px;transition:transform .2s}.progress-stat-card:hover{transform:translateY(-2px)}.progress-stat-icon{align-items:center;border-radius:12px;display:flex;font-size:2.5rem;height:60px;justify-content:center;width:60px}.progress-stat-total .progress-stat-icon{background:#dbeafe}.progress-stat-on-track .progress-stat-icon{background:#d1fae5}.progress-stat-needs-attention .progress-stat-icon{background:#fed7aa}.progress-stat-average .progress-stat-icon{background:#e0e7ff}.progress-stat-number{color:#1f2937;font-size:2rem;font-weight:700;margin:0 0 5px}.progress-stat-label{color:#6b7280;font-size:.9rem;margin:0}.progress-dashboard-filters-section{align-items:center;background:#fff;border-radius:12px;box-shadow:0 2px 4px #0000001a;display:flex;gap:30px;margin-bottom:30px;padding:20px}.progress-filter-group{align-items:center;display:flex;gap:10px}.progress-filter-label{color:#374151;font-weight:600;white-space:nowrap}.progress-filter-select{background:#fff;border:1px solid #d1d5db;border-radius:6px;color:#374151;min-width:180px;padding:8px 12px}.progress-dashboard-teams-section{margin-top:20px}.progress-dashboard-no-teams{background:#fff;border-radius:12px;box-shadow:0 2px 4px #0000001a;padding:60px 20px;text-align:center}.progress-no-teams-icon{font-size:4rem;margin-bottom:20px}.progress-teams-grid{grid-gap:25px;display:grid;gap:25px;grid-template-columns:repeat(auto-fill,minmax(400px,1fr))}.progress-team-card{background:#fff;border:2px solid #0000;border-radius:12px;box-shadow:0 4px 6px #0000001a;padding:25px;transition:all .3s}.progress-team-card:hover{border-color:#3b82f6;box-shadow:0 8px 12px #00000026;transform:translateY(-2px)}.progress-team-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:20px}.progress-team-name{color:#1f2937;font-size:1.25rem;font-weight:700;margin:0 0 5px}.progress-team-id{color:#6b7280;font-family:monospace;font-size:.85rem}.progress-team-badges{align-items:flex-end;display:flex;flex-direction:column;gap:8px}.progress-phase-badge{border-radius:20px;color:#fff;font-size:.8rem;font-weight:600;padding:4px 12px}.progress-phase-a{background:#3b82f6}.progress-phase-b{background:#f59e0b}.progress-phase-c{background:#10b981}.progress-status-badge{border-radius:20px;color:#fff;font-size:.8rem;font-weight:600;padding:4px 12px}.progress-status-on-track{background:#10b981}.progress-status-needs-improvement{background:#f59e0b}.progress-status-delayed{background:#ef4444}.progress-status-completed{background:#8b5cf6}.progress-status-default{background:#6b7280}.progress-team-overall-section{margin-bottom:25px}.progress-overall-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:10px}.progress-overall-label{color:#374151;font-weight:600}.progress-overall-percentage{color:#1f2937;font-size:1.1rem;font-weight:700}.progress-overall-bar{background:#e5e7eb;border-radius:6px;height:12px;overflow:hidden}.progress-overall-fill{border-radius:6px;height:100%;transition:width .3s ease}.progress-team-members-section{margin-bottom:25px}.progress-members-title{color:#374151;font-size:1rem;font-weight:600;margin:0 0 15px}.progress-members-list{display:flex;flex-direction:column;gap:12px}.progress-member-item{align-items:center;background:#f9fafb;border-radius:8px;display:flex;gap:12px;padding:10px}.progress-member-avatar{border-radius:50%;flex-shrink:0;height:40px;overflow:hidden;width:40px}.progress-member-img{height:100%;object-fit:cover;width:100%}.progress-member-fallback{align-items:center;background:#3b82f6;color:#fff;display:flex;font-weight:600;height:100%;justify-content:center;width:100%}.progress-member-info{flex:1 1;min-width:0}.progress-member-name{color:#1f2937;font-weight:600;margin-bottom:4px}.progress-member-details{color:#6b7280;display:flex;font-size:.8rem;gap:12px}.progress-leader-badge{background:#fbbf24;border-radius:12px;color:#92400e;display:inline-block;font-size:.7rem;font-weight:600;margin-top:4px;padding:2px 8px}.progress-milestones-section{margin-bottom:25px}.progress-milestones-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:15px}.progress-milestones-title{color:#374151;font-size:1rem;font-weight:600;margin:0}.progress-view-details-btn{align-items:center;background:#6366f1;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:.8rem;gap:6px;padding:6px 12px}.progress-milestones-list{display:flex;flex-direction:column;gap:8px}.progress-milestone-item{align-items:center;background:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;display:flex;gap:12px;padding:10px}.progress-milestone-checkbox{cursor:pointer;height:18px;width:18px}.progress-milestone-content{flex:1 1}.progress-milestone-name{color:#374151;font-weight:500;margin-bottom:2px}.progress-milestone-weight{color:#6b7280;font-size:.8rem}.progress-milestone-status{align-items:center;display:flex;height:24px;justify-content:center;width:24px}.progress-milestone-check-icon{color:#10b981;font-size:1.2rem}.progress-milestone-pending-dot{background:#d1d5db;border-radius:50%;height:8px;width:8px}.progress-milestone-completed{background:#ecfdf5;border-color:#10b981}.progress-latest-submission-section{margin-bottom:25px}.progress-submission-title{color:#374151;font-size:.9rem;font-weight:600;margin:0 0 10px}.progress-submission-info{align-items:center;background:#f9fafb;border-radius:6px;display:flex;justify-content:space-between;padding:12px}.progress-submission-name{color:#374151;font-weight:500}.progress-submission-date{color:#6b7280;font-size:.8rem}.progress-submission-status{border-radius:12px;font-size:.7rem;font-weight:600;padding:4px 8px}.progress-submission-approved{background:#d1fae5;color:#065f46}.progress-submission-pending{background:#fef3c7;color:#92400e}.progress-submission-rejected{background:#fee2e2;color:#991b1b}.progress-no-submission{color:#6b7280;font-style:italic;padding:10px;text-align:center}.progress-team-actions{display:flex;gap:10px}.progress-action-btn{align-items:center;border:none;border-radius:6px;cursor:pointer;display:flex;flex:1 1;font-weight:500;gap:6px;justify-content:center;padding:10px 16px;transition:all .2s}.progress-update-status-btn{background:#f59e0b;color:#fff}.progress-update-status-btn:hover{background:#d97706}.progress-view-team-btn{background:#3b82f6;color:#fff}.progress-view-team-btn:hover{background:#2563eb}.progress-modal-overlay,.progress-status-modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.progress-modal-container,.progress-status-modal-container{background:#fff;border-radius:12px;max-height:90vh;max-width:800px;overflow-y:auto;width:90%}.progress-modal-header,.progress-status-modal-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:20px}.progress-modal-title,.progress-status-modal-title{color:#1f2937;font-size:1.25rem;font-weight:600;margin:0}.progress-modal-close-btn,.progress-status-modal-close-btn{background:none;border:none;color:#6b7280;cursor:pointer;font-size:1.5rem;padding:4px}.progress-modal-content{padding:20px}.progress-modal-overview{margin-bottom:30px}.progress-modal-stats{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.progress-modal-stat{align-items:center;background:#f9fafb;border-radius:8px;display:flex;justify-content:space-between;padding:15px}.progress-modal-stat-label{color:#374151;font-weight:500}.progress-modal-stat-value{color:#1f2937;font-weight:600}.progress-modal-section-title{color:#1f2937;font-size:1.1rem;font-weight:600;margin:0 0 20px}.progress-modal-phase-section{margin-bottom:25px}.progress-modal-phase-title{background:#f3f4f6;border-radius:6px;color:#374151;font-size:1rem;font-weight:600;margin:0 0 15px;padding:10px 15px}.progress-modal-phase-milestones{display:flex;flex-direction:column;gap:10px}.progress-modal-milestone{align-items:center;border:1px solid #e5e7eb;border-radius:6px;display:flex;gap:15px;padding:12px}.progress-modal-milestone-completed{background:#ecfdf5;border-color:#10b981}.progress-modal-milestone-pending{background:#fefefe}.progress-modal-milestone-status{align-items:center;display:flex;height:24px;justify-content:center;width:24px}.progress-modal-milestone-check{color:#10b981;font-size:1.2rem}.progress-modal-milestone-pending-indicator{background:#d1d5db;border-radius:50%;height:10px;width:10px}.progress-modal-milestone-name{color:#374151;font-weight:500}.progress-modal-milestone-weight{color:#6b7280;font-size:.8rem}.progress-status-modal-content{padding:20px}.progress-status-form-group{margin-bottom:20px}.progress-status-form-label{color:#374151;display:block;font-weight:600;margin-bottom:8px}.progress-status-form-select,.progress-status-form-textarea{background:#fff;border:1px solid #d1d5db;border-radius:6px;color:#374151;padding:10px 12px;width:100%}.progress-status-form-textarea{font-family:inherit;resize:vertical}.progress-status-descriptions{background:#f9fafb;border-radius:8px;margin-bottom:20px;padding:15px}.progress-status-descriptions-title{color:#374151;font-size:.9rem;font-weight:600;margin:0 0 10px}.progress-status-descriptions-list{margin:0;padding-left:20px}.progress-status-description-item{color:#6b7280;font-size:.8rem;margin-bottom:5px}.progress-status-modal-footer{border-top:1px solid #e5e7eb;display:flex;gap:12px;justify-content:flex-end;padding:20px}.progress-status-cancel-btn{background:#fff;border:1px solid #d1d5db;border-radius:6px;color:#374151;cursor:pointer;font-weight:500;padding:10px 20px}.progress-status-update-btn{background:#3b82f6;border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:500;padding:10px 20px}.progress-status-update-btn:disabled{background:#9ca3af;cursor:not-allowed}@media (max-width:768px){.progress-dashboard-main-container{padding:15px}.progress-dashboard-header-section{align-items:stretch;flex-direction:column;gap:20px}.progress-stats-grid,.progress-teams-grid{grid-template-columns:1fr}.progress-dashboard-filters-section{align-items:stretch;flex-direction:column;gap:15px}.progress-filter-group{align-items:stretch;flex-direction:column;gap:8px}.progress-filter-select{min-width:auto}}.progress-create-milestone-btn{align-items:center;background:#3b82f6;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:12px;gap:4px;padding:6px 12px;transition:all .2s ease}.progress-create-milestone-btn:hover{background:#2563eb;transform:translateY(-1px)}.milestones-actions{display:flex;gap:8px}.custom-milestone{background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border-left:4px solid #3b82f6}.progress-milestone-type{border-radius:10px;font-size:10px;font-weight:700;letter-spacing:.5px;padding:2px 6px;text-transform:uppercase}.progress-milestone-type:not(.custom){background:#e5e7eb;color:#6b7280}.progress-milestone-type.custom{background:#dbeafe;color:#3b82f6}.progress-milestone-description{color:#6b7280;font-size:11px;font-style:italic;margin-top:2px}.progress-milestone-due-date{color:#f59e0b;font-size:10px;font-weight:700;margin-top:2px}.progress-milestone-modal-container{background:#fff;border-radius:12px;box-shadow:0 25px 50px -12px #00000040;max-height:80vh;max-width:600px;overflow:auto;width:90%}.milestone-form-group{margin-bottom:20px}.milestone-form-label{color:#374151;display:block;font-size:14px;font-weight:600;margin-bottom:6px}.milestone-form-input,.milestone-form-select,.milestone-form-textarea{background:#fff;border:2px solid #e5e7eb;border-radius:8px;font-size:14px;padding:10px 12px;transition:all .2s ease;width:100%}.milestone-form-input:focus,.milestone-form-select:focus,.milestone-form-textarea:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.milestone-form-textarea{min-height:80px;resize:vertical}.milestone-form-row{grid-gap:20px;display:grid;gap:20px;grid-template-columns:2fr 1fr}.milestone-form-note{align-items:flex-start;background:#f0f9ff;border:1px solid #bae6fd;border-radius:8px;color:#0369a1;display:flex;font-size:13px;gap:8px;margin-top:15px;padding:12px}.milestone-form-note svg{color:#3b82f6;flex-shrink:0;margin-top:1px}.progress-milestone-cancel-btn,.progress-milestone-create-btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;font-weight:600;gap:8px;padding:12px 24px;transition:all .2s ease}.progress-milestone-create-btn{background:#3b82f6;color:#fff}.progress-milestone-create-btn:hover:not(:disabled){background:#2563eb;transform:translateY(-1px)}.progress-milestone-create-btn:disabled{background:#9ca3af;cursor:not-allowed;transform:none}.progress-milestone-cancel-btn{background:#f3f4f6;color:#6b7280}.progress-milestone-cancel-btn:hover{background:#e5e7eb;color:#374151}@media (max-width:768px){.milestone-form-row{grid-template-columns:1fr}.milestones-actions{flex-direction:column}.progress-create-milestone-btn{justify-content:center;width:100%}}.milestone-actions{margin-left:auto}.delete-milestone-btn,.edit-milestone-btn{border:none;border-radius:4px;cursor:pointer;font-size:12px;padding:4px 8px;transition:all .2s ease}.edit-milestone-btn{background-color:#3b82f6;color:#fff}.edit-milestone-btn:hover{background-color:#2563eb}.delete-milestone-btn{background-color:#ef4444;color:#fff}.delete-milestone-btn:hover{background-color:#dc2626}.progress-milestone-item.custom-milestone{background-color:#f0fdf4;border-left:3px solid #10b981}.progress-milestone-type.predefined{background-color:#3b82f6;border-radius:12px;color:#fff;font-size:11px;padding:2px 8px}.progress-milestone-type.custom{background-color:#10b981;border-radius:12px;color:#fff;font-size:11px;padding:2px 8px}.predefined-milestone{border-left:3px solid #3b82f6}.predefined-milestone.customized{border-left-color:#f59e0b}.progress-milestone-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.milestone-actions{display:flex;gap:8px}.edit-predefined-milestone-btn,.reset-predefined-milestone-btn{background:none;border:none;border-radius:4px;color:#6b7280;cursor:pointer;padding:4px;transition:all .2s}.edit-predefined-milestone-btn:hover{background-color:#3b82f6;color:#fff}.reset-predefined-milestone-btn:hover{background-color:#f59e0b;color:#fff}.progress-milestone-type.customized{background-color:#fbbf24;color:#92400e}.progress-milestone-type.default{background-color:#e5e7eb;color:#374151}.grade-input-container{margin-bottom:15px;width:100%}.grade-input-label{font-weight:700;margin-bottom:5px}.grade-input{border:1px solid #d1d5db;border-radius:6px;font-size:14px;padding:8px 12px;transition:border-color .2s}.grade-input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.grade-preview{background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;margin-top:8px;padding:10px}.grade-display{font-size:14px}.percentage-display{color:#1f2937}.letter-grade{font-size:12px}.gpa-display{color:#6b7280;font-size:13px}.grade-error{font-size:12px}.team-grade-display{background:#ffffff1a;border-radius:6px;margin-top:10px;padding:8px}.team-average{color:#374151;font-size:13px}.grade-badge{font-size:11px;font-weight:700}.team-grade-summary{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;margin-top:15px;padding:15px}.grade-summary-content h5{color:#1f2937;font-size:16px;margin:0 0 10px}.summary-stats{display:flex;flex-wrap:wrap;gap:15px}.stat-item{display:flex;flex-direction:column;gap:2px}.stat-label{color:#6b7280;font-size:12px}.stat-value{color:#1f2937;font-size:14px;font-weight:700}.grade-badge-large{font-size:13px;font-weight:700}.submitted-grade-display{background:#f0f9ff;border:1px solid #bae6fd;border-radius:4px;margin-top:8px;padding:8px}.grade-info{align-items:center;display:flex;margin-bottom:4px}.grade-percentage{color:#1f2937;font-weight:700}.gpa-info{color:#6b7280;font-size:12px}@media (max-width:768px){.grade-display{align-items:flex-start;flex-direction:column;gap:6px}.summary-stats{flex-direction:column;gap:10px}}.board-eval-main-container{background:#fafafa;color:#2c3e50;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;padding:32px}.board-eval-main-loading{border:1px solid #e1e8ed;border-radius:8px;margin:40px auto;max-width:400px;padding:48px 32px}.board-eval-main-loading .spinning{color:#3498db;font-size:1.5rem}.board-eval-page-header{background:#fff;border:1px solid #e1e8ed;border-radius:8px;padding:40px 32px}.board-eval-page-header h2{color:#2c3e50;font-size:2rem;font-weight:600;letter-spacing:-.02em}.board-eval-page-header p{color:#7f8c8d;font-size:1rem}.board-eval-selection-section{background:#fff;border:1px solid #e1e8ed;border-radius:8px;margin-bottom:32px;padding:32px}.board-eval-selection-section h3{color:#2c3e50;font-size:1.5rem;letter-spacing:-.01em;margin:0 0 24px}.board-eval-boards-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.board-eval-board-card{border:2px solid #e1e8ed;border-radius:8px;transition:all .2s ease}.board-eval-board-card:hover{border-color:#3498db;box-shadow:0 2px 8px #3498db14}.board-eval-board-card.selected{background:#f8fafe;border-color:#3498db;box-shadow:0 2px 8px #3498db1f}.board-eval-card-header h4{color:#2c3e50;flex:1 1;font-size:1.125rem}.board-eval-board-number{background:#ecf0f1;color:#34495e;margin-left:12px}.board-eval-board-card.selected .board-eval-board-number{background:#3498db;color:#fff}.board-eval-board-stats{flex-wrap:wrap}.board-eval-board-stats span{background:#f8f9fa;border:1px solid #e9ecef;border-radius:4px;color:#34495e;font-size:.875rem;font-weight:500;padding:6px 10px}.board-eval-board-card.selected .board-eval-board-stats span{background:#e3f2fd;border-color:#bbdefb;color:#1976d2}.board-eval-board-role{color:#7f8c8d}.board-eval-board-card.selected .board-eval-board-role{color:#3498db;font-weight:600}.board-eval-no-boards-message{border:2px dashed #e1e8ed;border-radius:8px;color:#7f8c8d;font-size:1rem}.board-eval-phase-selection-section{background:#fff;border:1px solid #e1e8ed;border-radius:8px;margin-bottom:32px;padding:32px}.board-eval-phase-selection-section h3{color:#2c3e50;font-size:1.5rem;font-weight:600;letter-spacing:-.01em;margin:0 0 24px}.board-eval-phase-tabs{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.board-eval-phase-tab{background:#fff;border:2px solid #e1e8ed;border-radius:8px;cursor:pointer;padding:20px 16px;text-align:center;transition:all .2s ease}.board-eval-phase-tab:hover{border-color:#27ae60;box-shadow:0 2px 8px #27ae6014}.board-eval-phase-tab.active{background:#f0f9f4;border-color:#27ae60;box-shadow:0 2px 8px #27ae601f}.board-eval-phase-tab h4{color:#2c3e50;font-size:1.125rem;font-weight:600;margin:0 0 8px}.board-eval-phase-tab.active h4{color:#27ae60}.board-eval-phase-description{color:#7f8c8d;display:block;font-size:.875rem;line-height:1.4;margin:0}.board-eval-phase-tab.active .board-eval-phase-description{color:#229954}.board-eval-teams-section{background:#fff;border:1px solid #e1e8ed;border-radius:8px;padding:32px}.board-eval-section-header{align-items:center;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin-bottom:32px}.board-eval-section-header h3{color:#2c3e50;font-size:1.5rem;font-weight:600;letter-spacing:-.01em;margin:0}.board-eval-refresh-teams-btn{align-items:center;background:#3498db;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:.875rem;font-weight:500;gap:8px;padding:10px 16px;transition:all .2s ease}.board-eval-refresh-teams-btn:hover{background:#2980b9;box-shadow:0 2px 4px #3498db33}.board-eval-refresh-teams-btn:disabled{cursor:not-allowed;opacity:.6}.board-eval-loading-teams,.board-eval-no-teams-message{color:#7f8c8d;padding:48px 20px;text-align:center}.board-eval-loading-teams .spinning{color:#3498db;font-size:1.5rem;margin-bottom:16px}.board-eval-teams-grid{grid-template-columns:repeat(auto-fill,minmax(360px,1fr))}.board-eval-team-card{border:1px solid #e1e8ed;border-radius:8px;transition:all .2s ease}.board-eval-team-card:hover{border-color:#3498db;box-shadow:0 4px 12px #3498db14}.board-eval-team-card-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:20px}.board-eval-team-card-header h4{color:#2c3e50;flex:1 1;font-size:1.25rem;font-weight:600;line-height:1.3;margin:0}.board-eval-team-badges{align-items:flex-end;display:flex;flex-direction:column;gap:8px}.board-eval-evaluation-status{border-radius:4px;font-size:.75rem;font-weight:600;letter-spacing:.5px;padding:4px 10px;text-transform:uppercase}.board-eval-evaluation-status.completed{background:#d5f4e6;color:#27ae60}.board-eval-evaluation-status.pending{background:#fff3cd;color:#f39c12}.board-eval-supervisor-badge{align-items:center;background:#ecf0f1;border-radius:4px;color:#34495e;display:flex;font-size:.75rem;font-weight:500;gap:4px;padding:4px 8px}.board-eval-team-info{margin-bottom:20px}.board-eval-team-meta{gap:12px;margin-bottom:16px}.board-eval-team-meta span{background:#f8f9fa;border:1px solid #e9ecef;border-radius:4px;color:#34495e;font-size:.8125rem;font-weight:500;padding:6px 10px}.board-eval-project-idea{background:#f8fafe;border-left:3px solid #3498db;border-radius:6px;margin-bottom:16px;padding:16px}.board-eval-project-idea strong{color:#2c3e50;display:block;font-size:.875rem;font-weight:600;margin-bottom:8px}.board-eval-project-idea p{color:#34495e;font-size:.875rem;line-height:1.5;margin:0}.board-eval-team-members-preview{margin-bottom:20px}.board-eval-team-members-preview h5{color:#2c3e50;font-size:1rem;font-weight:600;margin:0 0 12px}.board-eval-members-list{flex-direction:column;gap:10px}.board-eval-member-preview{align-items:center;background:#f8f9fa;border:1px solid #e9ecef;border-radius:6px;display:flex;gap:12px;padding:12px}.board-eval-member-avatar{flex-shrink:0;height:36px;overflow:hidden;width:36px}.board-eval-member-avatar img{height:100%;object-fit:cover;width:100%}.board-eval-avatar-fallback{align-items:center;background:#3498db;border-radius:50%;color:#fff;display:flex;font-size:.875rem;font-weight:600;height:36px;justify-content:center;width:36px}.board-eval-member-info{flex:1 1;min-width:0}.board-eval-member-name{color:#2c3e50;display:block;font-size:.875rem;font-weight:600;margin-bottom:2px}.board-eval-member-role{align-items:center;color:#7f8c8d;display:flex;font-size:.8125rem;gap:4px}.board-eval-member-role svg{color:#f39c12;font-size:.75rem}.board-eval-evaluate-btn{background:#3498db;flex:1 1;gap:8px;justify-content:center;padding:12px 16px;transition:all .2s ease}.board-eval-evaluate-btn:hover{background:#2980b9;box-shadow:0 2px 4px #3498db33}.board-eval-evaluate-btn.update{background:#e67e22}.board-eval-evaluate-btn.update:hover{background:#d35400;box-shadow:0 2px 4px #e67e2233}.board-eval-modal-overlay{background:#2c3e5099;padding:20px}.board-eval-modal{border-radius:8px;box-shadow:0 10px 40px #2c3e5026;max-width:900px;width:100%}.board-eval-modal-header{background:#f8f9fa;border-bottom:1px solid #e1e8ed;padding:24px 32px}.board-eval-modal-header h3{color:#2c3e50}.board-eval-close-modal-btn{align-items:center;background:#ecf0f1;border:none;border-radius:4px;color:#34495e;cursor:pointer;display:flex;font-size:1rem;height:32px;justify-content:center;transition:all .2s ease;width:32px}.board-eval-close-modal-btn:hover{background:#bdc3c7;color:#2c3e50}.board-eval-modal-content{padding:32px}.board-eval-team-info-section{background:#f8f9fa;border:1px solid #e9ecef;border-radius:6px;margin-bottom:32px;padding:24px}.board-eval-team-details h4{color:#2c3e50;font-size:1.25rem;font-weight:600;margin:0 0 16px}.board-eval-info-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:16px}.board-eval-info-grid span{background:#fff;border:1px solid #e9ecef;border-radius:4px;color:#34495e;font-size:.875rem;padding:12px}.board-eval-supervisor-note{align-items:center;background:#fff3cd;border:1px solid #ffeaa7;border-radius:4px;color:#856404;display:flex;font-size:.875rem;font-weight:500;gap:8px;margin-top:16px;padding:12px 16px}.board-eval-project-info{background:#fff;border:1px solid #e9ecef;border-radius:6px;margin-top:20px;padding:20px}.board-eval-project-info h5{color:#2c3e50;font-size:1rem;font-weight:600;margin:0 0 12px}.board-eval-project-info p{color:#34495e;font-size:.875rem;line-height:1.6;margin:0}.board-eval-evaluation-type-section{margin-bottom:32px}.board-eval-evaluation-type-section h4{color:#2c3e50;font-size:1.25rem;font-weight:600;margin:0 0 20px}.board-eval-evaluation-type-options{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.board-eval-type-option{background:#fff;border:2px solid #e1e8ed;border-radius:6px;cursor:pointer;display:block;padding:20px;position:relative;transition:all .2s ease}.board-eval-type-option input{opacity:0;pointer-events:none;position:absolute}.board-eval-type-option:hover{border-color:#3498db;box-shadow:0 2px 8px #3498db14}.board-eval-type-option.selected{background:#f8fafe;border-color:#3498db;box-shadow:0 2px 8px #3498db1f}.board-eval-option-content strong{color:#2c3e50;display:block;font-size:1rem;font-weight:600;margin-bottom:8px}.board-eval-option-content span{color:#7f8c8d;font-size:.875rem;line-height:1.4}.board-eval-individual-evaluation-form,.board-eval-team-evaluation-form{background:#f8f9fa;border:1px solid #e9ecef;border-radius:6px;padding:24px}.board-eval-individual-evaluation-form h4,.board-eval-team-evaluation-form h4{color:#2c3e50;font-size:1.25rem;font-weight:600;margin:0 0 20px}.board-eval-form-group label{color:#2c3e50;font-weight:600}.board-eval-form-group textarea{border:1px solid #e1e8ed;border-radius:4px;font-family:inherit;font-size:.875rem;line-height:1.5;padding:12px;resize:vertical;transition:border-color .2s ease;width:100%}.board-eval-form-group textarea:focus{border-color:#3498db;box-shadow:0 0 0 2px #3498db1a;outline:none}.board-eval-form-group small{color:#7f8c8d;display:block;font-size:.8125rem;margin-top:4px}.board-eval-members-evaluation-list{display:flex;flex-direction:column;gap:20px}.board-eval-member-evaluation-item{background:#fff;border:1px solid #e1e8ed;border-radius:6px;padding:20px;transition:all .2s ease}.board-eval-member-evaluation-item:hover{border-color:#3498db;box-shadow:0 2px 8px #3498db14}.board-eval-member-header{margin-bottom:16px}.board-eval-member-info-detailed{align-items:center;display:flex;gap:16px}.board-eval-member-avatar-large{border-radius:50%;flex-shrink:0;height:48px;overflow:hidden;width:48px}.board-eval-member-avatar-large img{height:100%;object-fit:cover;width:100%}.board-eval-avatar-fallback-large{align-items:center;background:#3498db;border-radius:50%;color:#fff;display:flex;font-size:1.125rem;font-weight:600;height:48px;justify-content:center;width:48px}.board-eval-member-details h5{color:#2c3e50;font-size:1.125rem;font-weight:600;margin:0 0 4px}.board-eval-member-role-detailed{align-items:center;color:#3498db;display:flex;font-size:.875rem;font-weight:500;gap:6px;margin-bottom:4px}.board-eval-member-role-detailed svg{color:#f39c12;font-size:.75rem}.board-eval-member-id{color:#7f8c8d;font-size:.8125rem}.board-eval-member-evaluation-form{border-top:1px solid #e9ecef;padding-top:16px}.board-eval-form-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr}.board-eval-modal-footer{background:#f8f9fa;border-top:1px solid #e1e8ed;padding:20px 32px}.board-eval-cancel-btn{background:#ecf0f1;border:none;border-radius:4px;color:#34495e;padding:10px 16px;transition:all .2s ease}.board-eval-cancel-btn:hover{background:#bdc3c7}.board-eval-cancel-btn:disabled{cursor:not-allowed;opacity:.5}.board-eval-submit-btn{background:#27ae60;border-radius:4px;padding:10px 16px;transition:all .2s ease}.board-eval-submit-btn:hover{background:#229954;box-shadow:0 2px 4px #27ae6033}.board-eval-submit-btn:disabled{opacity:.6}.board-eval-submit-btn .spinning{animation:spin 1s linear infinite}@media (max-width:768px){.board-eval-main-container,.board-eval-page-header,.board-eval-phase-selection-section,.board-eval-selection-section,.board-eval-teams-section{padding:20px}.board-eval-page-header h2{font-size:1.75rem}.board-eval-boards-grid,.board-eval-phase-tabs,.board-eval-teams-grid{grid-template-columns:1fr}.board-eval-section-header{align-items:stretch;flex-direction:column}.board-eval-modal{margin:10px;max-height:calc(100vh - 20px)}.board-eval-modal-content,.board-eval-modal-footer,.board-eval-modal-header{padding:20px}.board-eval-evaluation-type-options{grid-template-columns:1fr}.board-eval-modal-footer{flex-direction:column-reverse}.board-eval-info-grid{grid-template-columns:1fr}.board-eval-member-info-detailed{flex-direction:column;gap:12px;text-align:center}}@media (max-width:480px){.board-eval-main-container{padding:16px}.board-eval-page-header h2{font-size:1.5rem}.board-eval-team-meta{flex-direction:column;gap:8px}.board-eval-team-card-header{align-items:stretch;flex-direction:column;gap:12px}.board-eval-team-badges{align-items:flex-start}.board-eval-page-header,.board-eval-phase-selection-section,.board-eval-selection-section,.board-eval-teams-section{padding:16px}}.board-eval-section-divider{background:#e1e8ed;height:1px;margin:24px 0}.board-eval-badge{align-items:center;background:#f8f9fa;border:1px solid #e9ecef;border-radius:4px;color:#34495e;display:inline-flex;font-size:.75rem;font-weight:500;padding:4px 8px}.board-eval-status-indicator{border-radius:50%;display:inline-block;height:8px;margin-right:6px;width:8px}.board-eval-status-indicator.active{background:#27ae60}.board-eval-status-indicator.pending{background:#f39c12}.board-eval-status-indicator.completed{background:#3498db}.board-eval-faculty-section{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;margin:20px 0;padding:20px}.board-eval-faculty-section h3{color:#2d3748;font-size:18px;font-weight:600;margin-bottom:15px}.board-eval-faculty-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.board-eval-faculty-card{background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:16px;transition:transform .2s,box-shadow .2s}.board-eval-faculty-card:hover{box-shadow:0 4px 8px #00000026;transform:translateY(-2px)}.board-eval-faculty-header{align-items:flex-start;display:flex;margin-bottom:15px}.board-eval-faculty-avatar{border-radius:50%;flex-shrink:0;height:50px;margin-right:12px;overflow:hidden;width:50px}.board-eval-faculty-avatar img{height:100%;object-fit:cover;width:100%}.board-eval-faculty-avatar-fallback{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;font-size:18px;font-weight:700;height:100%;justify-content:center;width:100%}.board-eval-faculty-info{flex:1 1}.board-eval-faculty-info h4{color:#2d3748;font-size:16px;font-weight:600;margin:0 0 4px}.board-eval-faculty-department,.board-eval-faculty-email{color:#4a5568;font-size:13px;margin:2px 0}.board-eval-faculty-role-badge{background:#edf2f7;border-radius:12px;color:#4a5568;display:inline-block;font-size:11px;font-weight:500;margin-top:4px;padding:3px 8px}.board-eval-faculty-teams h5{color:#2d3748;font-size:14px;font-weight:600;margin:0 0 10px}.board-eval-supervised-teams-list{max-height:200px;overflow-y:auto}.board-eval-supervised-team-item{background:#f7fafc;border-left:3px solid #4299e1;border-radius:6px;margin-bottom:8px;padding:8px}.board-eval-team-name{color:#2d3748;display:block;font-size:13px;font-weight:600;margin-bottom:4px}.board-eval-team-details{display:flex;flex-wrap:wrap;gap:8px}.board-eval-team-details span{border-radius:4px;font-size:11px;font-weight:500;padding:2px 6px}.board-eval-team-members{background:#bee3f8;color:#2c5282}.board-eval-team-phase{background:#c6f6d5;color:#276749}.board-eval-team-status{color:#fff}.status-active{background:#48bb78}.status-recruiting{background:#ed8936}.status-completed{background:#9f7aea}.status-inactive{background:#a0aec0}.board-eval-no-supervised-teams{background:#f7fafc;border-radius:6px;color:#a0aec0;font-style:italic;padding:20px;text-align:center}.board-eval-faculty-meta{border-top:1px solid #e2e8f0;color:#718096;margin-top:12px;padding-top:12px}@media (max-width:768px){.board-eval-faculty-grid{grid-template-columns:1fr}.board-eval-faculty-header{flex-direction:column;text-align:center}.board-eval-faculty-avatar{margin:0 auto 10px}}.board-eval-main-container{background:linear-gradient(135deg,#f8fafc,#e2e8f0);font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;margin:0 auto;max-width:1400px;min-height:100vh;padding:24px}.board-eval-page-header{background:linear-gradient(135deg,#fff,#f1f5f9);border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 4px 6px -1px #0000001a;margin-bottom:32px;padding:32px;position:relative;text-align:center}.board-eval-page-header:before{background:linear-gradient(90deg,#3b82f6,#1e40af);border-radius:12px 12px 0 0;content:"";height:4px;left:0;position:absolute;right:0;top:0}.board-eval-page-header h2{color:#1e293b;font-size:2.5rem;font-weight:700;letter-spacing:-.025em;margin:0 0 8px}.board-eval-page-header p{color:#64748b;font-size:1.125rem;font-weight:400;margin:0}.board-eval-main-loading{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 4px 6px -1px #0000001a;display:flex;flex-direction:column;justify-content:center;min-height:60vh}.board-eval-main-loading .spinning{animation:spin 1s linear infinite;color:#3b82f6;font-size:2rem;margin-bottom:16px}.board-eval-main-loading span{color:#64748b;font-size:1.125rem;font-weight:500}.supervisor-teams-section{margin-bottom:40px}.supervisor-teams-section h3{align-items:center;border-bottom:2px solid #e2e8f0;color:#1e293b;display:flex;font-size:1.875rem;font-weight:600;margin-bottom:24px;padding-bottom:12px}.supervisor-teams-section h3:before{content:"👥";font-size:1.5rem;margin-right:12px}.supervisor-teams-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fill,minmax(600px,1fr))}.supervisor-team-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 4px 6px -1px #0000001a;padding:24px;position:relative;transition:all .3s ease}.supervisor-team-card:hover{box-shadow:0 10px 15px -3px #00000026;transform:translateY(-2px)}.team-card-header{align-items:center;border-bottom:1px solid #f1f5f9;display:flex;justify-content:space-between;margin-bottom:20px;padding-bottom:16px}.team-card-header h4{color:#1e293b;font-size:1.25rem;font-weight:600;margin:0}.team-phase-badge{border-radius:6px;color:#fff;font-size:.875rem;font-weight:600;padding:6px 12px}.team-phase-badge.phase-a{background:linear-gradient(135deg,#3b82f6,#1e40af)}.team-phase-badge.phase-b{background:linear-gradient(135deg,#f59e0b,#d97706)}.team-phase-badge.phase-c{background:linear-gradient(135deg,#10b981,#047857)}.team-evaluation-phases{display:flex;flex-direction:column;gap:16px}.phase-evaluation-status{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:16px;transition:all .3s ease}.phase-evaluation-status.completed{background:linear-gradient(135deg,#ecfdf5,#d1fae5);border-color:#10b981}.phase-evaluation-status.partial{background:linear-gradient(135deg,#fef3c7,#fde68a);border-color:#f59e0b}.phase-evaluation-status.not-started{background:linear-gradient(135deg,#f8fafc,#e2e8f0);border-color:#cbd5e1}.phase-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.phase-name{color:#1e293b;font-size:1rem;font-weight:600}.evaluation-progress{background:#fff;border:1px solid #e2e8f0;border-radius:4px;color:#64748b;font-size:.875rem;font-weight:500;padding:4px 8px}.phase-actions{align-items:center;display:flex;justify-content:space-between}.board-name{color:#64748b;font-size:.875rem;font-weight:500}.view-detailed-evaluation-btn{background:linear-gradient(135deg,#3b82f6,#1e40af);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.875rem;font-weight:500;padding:8px 16px;transition:all .3s ease}.view-detailed-evaluation-btn:hover{background:linear-gradient(135deg,#1e40af,#1e3a8a);box-shadow:0 4px 8px -2px #0003;transform:translateY(-1px)}.view-detailed-evaluation-btn:disabled{background:#cbd5e1;box-shadow:none;cursor:not-allowed;transform:none}.no-evaluation{color:#94a3b8;font-style:italic;padding:16px;text-align:center}.board-eval-selection-section{margin-bottom:40px}.board-eval-selection-section h3{align-items:center;border-bottom:2px solid #e2e8f0;color:#1e293b;display:flex;font-size:1.875rem;font-weight:600;margin-bottom:24px;padding-bottom:12px}.board-eval-selection-section h3:before{content:"🏛️";font-size:1.5rem;margin-right:12px}.board-eval-boards-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.board-eval-board-card{background:#fff;border:2px solid #e2e8f0;border-radius:12px;cursor:pointer;overflow:hidden;padding:24px;position:relative;transition:all .3s ease}.board-eval-board-card:before{background:linear-gradient(90deg,#64748b,#475569);content:"";height:4px;left:0;position:absolute;right:0;top:0;transition:all .3s ease}.board-eval-board-card:hover{border-color:#3b82f6;box-shadow:0 8px 25px -8px #3b82f64d;transform:translateY(-2px)}.board-eval-board-card:hover:before{background:linear-gradient(90deg,#3b82f6,#1e40af)}.board-eval-board-card.selected{background:linear-gradient(135deg,#dbeafe,#bfdbfe);border-color:#3b82f6;box-shadow:0 8px 25px -8px #3b82f666}.board-eval-board-card.selected:before{background:linear-gradient(90deg,#3b82f6,#1e40af)}.board-eval-card-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:16px}.board-eval-card-header h4{color:#1e293b;font-size:1.25rem;font-weight:600;line-height:1.4;margin:0}.board-eval-board-number{background:linear-gradient(135deg,#64748b,#475569);border-radius:4px;color:#fff;font-size:.75rem;font-weight:600;letter-spacing:.05em;padding:4px 8px;text-transform:uppercase}.board-eval-board-card.selected .board-eval-board-number{background:linear-gradient(135deg,#3b82f6,#1e40af)}.board-eval-board-stats{color:#64748b;display:flex;font-size:.875rem;gap:16px;margin-bottom:12px}.board-eval-board-stats span{align-items:center;display:flex;gap:4px}.board-eval-board-role{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:6px;color:#475569;font-size:.875rem;font-weight:500;padding:6px 10px}.board-eval-board-card.selected .board-eval-board-role{background:#dbeafe;border-color:#bfdbfe;color:#1e40af}.board-eval-no-boards-message{background:#fff;border:2px dashed #cbd5e1;border-radius:12px;color:#64748b;padding:48px 24px;text-align:center}.board-eval-no-boards-message p{font-size:1rem;line-height:1.6;margin:8px 0}.board-eval-no-boards-message p:first-child{color:#475569;font-size:1.125rem;font-weight:600}.board-eval-phase-selection{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 2px 4px -1px #0000001a;margin-bottom:32px;padding:24px}.board-eval-phase-selection h3{align-items:center;color:#1e293b;display:flex;font-size:1.5rem;font-weight:600;margin-bottom:20px}.board-eval-phase-selection h3:before{content:"📋";font-size:1.25rem;margin-right:12px}.board-eval-phase-buttons{display:flex;flex-wrap:wrap;gap:12px}.board-eval-phase-btn{align-items:center;background:#f8fafc;border:2px solid #e2e8f0;border-radius:8px;color:#64748b;cursor:pointer;display:flex;flex-direction:column;font-size:1rem;font-weight:500;min-width:140px;padding:12px 24px;transition:all .3s ease}.board-eval-phase-btn:hover{background:#f1f5f9;border-color:#3b82f6;transform:translateY(-1px)}.board-eval-phase-btn.active{background:linear-gradient(135deg,#3b82f6,#1e40af);border-color:#1e40af;box-shadow:0 4px 8px -2px #3b82f666;color:#fff}.board-eval-phase-btn .phase-label{font-size:1.125rem;font-weight:600;margin-bottom:4px}.board-eval-phase-btn .phase-description{font-size:.875rem;line-height:1.3;opacity:.8;text-align:center}.board-eval-teams-section{margin-bottom:32px}.board-eval-teams-section h3{align-items:center;border-bottom:2px solid #e2e8f0;color:#1e293b;display:flex;font-size:1.875rem;font-weight:600;justify-content:space-between;margin-bottom:24px;padding-bottom:12px}.board-eval-teams-section h3:before{content:"🎯";font-size:1.5rem;margin-right:12px}.board-eval-teams-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fill,minmax(400px,1fr))}.board-eval-team-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 4px 6px -1px #0000001a;padding:24px;position:relative;transition:all .3s ease}.board-eval-team-card:hover{box-shadow:0 10px 15px -3px #00000026;transform:translateY(-2px)}.board-eval-team-header{align-items:flex-start;border-bottom:1px solid #f1f5f9;display:flex;justify-content:space-between;margin-bottom:16px;padding-bottom:12px}.board-eval-team-title h4{color:#1e293b;font-size:1.25rem;font-weight:600;margin:0 0 4px}.board-eval-team-meta{color:#64748b;display:flex;flex-wrap:wrap;font-size:.875rem;gap:16px}.board-eval-team-status{align-items:flex-end;display:flex;flex-direction:column;gap:8px}.board-eval-status-badge{border-radius:4px;font-size:.75rem;font-weight:600;letter-spacing:.05em;padding:4px 8px;text-transform:uppercase}.board-eval-status-badge.pending{background:#fef3c7;border:1px solid #f59e0b;color:#92400e}.board-eval-status-badge.completed{background:#d1fae5;border:1px solid #10b981;color:#065f46}.board-eval-status-badge.partial{background:#dbeafe;border:1px solid #3b82f6;color:#1e40af}.board-eval-members-preview{margin-bottom:16px}.board-eval-members-preview h5{color:#374151;font-size:.875rem;font-weight:600;letter-spacing:.05em;margin-bottom:12px;text-transform:uppercase}.board-eval-members-list{display:flex;flex-wrap:wrap;gap:8px}.board-eval-member-tag{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;color:#64748b;display:flex;font-size:.75rem;gap:4px;padding:4px 8px}.board-eval-member-tag.leader{background:linear-gradient(135deg,#fef3c7,#fde68a);border-color:#f59e0b;color:#92400e}.board-eval-team-actions{border-top:1px solid #f1f5f9;display:flex;flex-wrap:wrap;gap:12px;margin-top:16px;padding-top:16px}.board-eval-evaluate-btn{align-items:center;background:linear-gradient(135deg,#10b981,#047857);border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:.875rem;font-weight:500;gap:6px;padding:10px 16px;transition:all .3s ease}.board-eval-evaluate-btn:hover{background:linear-gradient(135deg,#047857,#065f46);box-shadow:0 4px 8px -2px #10b98166;transform:translateY(-1px)}.board-eval-evaluate-btn:disabled{background:#cbd5e1;box-shadow:none;cursor:not-allowed;transform:none}.board-eval-view-results-btn{align-items:center;background:linear-gradient(135deg,#3b82f6,#1e40af);border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:.875rem;font-weight:500;gap:6px;padding:10px 16px;transition:all .3s ease}.board-eval-view-results-btn:hover{background:linear-gradient(135deg,#1e40af,#1e3a8a);box-shadow:0 4px 8px -2px #3b82f666;transform:translateY(-1px)}.board-eval-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.board-eval-modal{background:#fff;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a;max-height:90vh;max-width:800px;overflow-y:auto;position:relative;width:90%}.board-eval-modal-header{align-items:center;background:linear-gradient(135deg,#f8fafc,#e2e8f0);border-bottom:1px solid #e2e8f0;border-radius:12px 12px 0 0;display:flex;justify-content:space-between;padding:24px}.board-eval-modal-header h3{color:#1e293b;font-size:1.5rem;font-weight:600;margin:0}.board-eval-modal-close{background:none;border:none;border-radius:4px;color:#64748b;cursor:pointer;font-size:1.5rem;padding:4px;transition:all .3s ease}.board-eval-modal-close:hover{background:#f1f5f9;color:#374151}.board-eval-modal-content{padding:24px}.board-eval-form-group{margin-bottom:20px}.board-eval-form-group label{color:#374151;display:block;font-size:.875rem;font-weight:500;margin-bottom:8px}.board-eval-evaluation-type-buttons{display:flex;gap:12px;margin-bottom:20px}.board-eval-type-btn{background:#f8fafc;border:2px solid #e2e8f0;border-radius:8px;color:#64748b;cursor:pointer;flex:1 1;font-size:.875rem;font-weight:500;padding:12px 20px;text-align:center;transition:all .3s ease}.board-eval-type-btn:hover{background:#f1f5f9;border-color:#3b82f6}.board-eval-type-btn.active{background:linear-gradient(135deg,#3b82f6,#1e40af);border-color:#1e40af;color:#fff}.board-eval-input{background:#fff;border:1px solid #d1d5db;border-radius:6px;font-size:.875rem;padding:12px 16px;transition:all .3s ease;width:100%}.board-eval-input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.board-eval-textarea{background:#fff;border:1px solid #d1d5db;border-radius:6px;font-size:.875rem;min-height:80px;padding:12px 16px;resize:vertical;transition:all .3s ease;width:100%}.board-eval-textarea:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.board-eval-individual-members{display:flex;flex-direction:column;gap:16px}.board-eval-member-eval{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:16px}.board-eval-member-header{align-items:center;display:flex;gap:12px;margin-bottom:12px}.board-eval-member-avatar{align-items:center;background:linear-gradient(135deg,#3b82f6,#1e40af);border-radius:50%;color:#fff;display:flex;font-size:1.125rem;font-weight:600;height:40px;justify-content:center;width:40px}.board-eval-member-info h5{color:#1e293b;font-size:1rem;font-weight:600;margin:0 0 2px}.board-eval-member-info span{color:#64748b;font-size:.875rem}.board-eval-member-fields{grid-gap:12px;align-items:start;display:grid;gap:12px;grid-template-columns:1fr 2fr}.board-eval-modal-footer{background:#f8fafc;border-radius:0 0 12px 12px;border-top:1px solid #e2e8f0;display:flex;gap:12px;justify-content:flex-end;padding:20px 24px}.board-eval-submit-btn{align-items:center;background:linear-gradient(135deg,#10b981,#047857);border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:.875rem;font-weight:500;gap:8px;padding:12px 24px;transition:all .3s ease}.board-eval-submit-btn:hover{background:linear-gradient(135deg,#047857,#065f46);box-shadow:0 4px 8px -2px #10b98166;transform:translateY(-1px)}.board-eval-submit-btn:disabled{background:#cbd5e1;box-shadow:none;cursor:not-allowed;transform:none}.board-eval-cancel-btn{background:#fff;border:1px solid #d1d5db;border-radius:6px;color:#64748b;cursor:pointer;font-size:.875rem;font-weight:500;padding:12px 24px;transition:all .3s ease}.board-eval-cancel-btn:hover{background:#f9fafb;border-color:#9ca3af;color:#374151}.detailed-evaluation-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.detailed-evaluation-modal{background:#fff;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a;max-height:90vh;max-width:1200px;overflow-y:auto;width:95%}.detailed-evaluation-header{align-items:center;background:linear-gradient(135deg,#1e293b,#334155);border-radius:12px 12px 0 0;color:#fff;display:flex;justify-content:space-between;padding:24px}.detailed-evaluation-header h3{font-size:1.5rem;font-weight:600;margin:0}.detailed-evaluation-content{padding:24px}.evaluation-progress-summary{background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border:1px solid #0ea5e9;border-radius:8px;margin-bottom:24px;padding:20px}.evaluation-progress-summary h4{color:#0c4a6e;font-size:1.25rem;font-weight:600;margin:0 0 16px}.progress-stats{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.progress-stat{display:flex;flex-direction:column;gap:4px}.stat-label{color:#64748b;font-size:.875rem;font-weight:500}.stat-value{color:#0c4a6e;font-size:1.125rem;font-weight:600}.stat-value.completed{color:#065f46}.stat-value.in-progress{color:#92400e}.faculty-evaluations-section{margin-bottom:32px}.faculty-evaluations-section h4{border-bottom:1px solid #e2e8f0;color:#1e293b;font-size:1.25rem;font-weight:600;margin-bottom:16px;padding-bottom:8px}.faculty-evaluations-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(450px,1fr))}.faculty-evaluation-card{background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 2px 4px -1px #0000001a;padding:20px}.faculty-evaluation-header{align-items:flex-start;border-bottom:1px solid #f1f5f9;display:flex;justify-content:space-between;margin-bottom:16px;padding-bottom:12px}.faculty-info h5{color:#1e293b;font-size:1rem;font-weight:600;margin:0 0 4px}.faculty-department{color:#64748b;font-size:.875rem}.supervisor-badge{background:linear-gradient(135deg,#fbbf24,#f59e0b);border-radius:4px;color:#fff;font-size:.75rem;font-weight:500;margin-left:8px;padding:2px 6px}.evaluation-meta{align-items:flex-end;display:flex;flex-direction:column;gap:4px}.evaluation-type-badge{background:#e2e8f0;border-radius:4px;color:#475569;font-size:.75rem;font-weight:500;padding:4px 8px;text-transform:capitalize}.submission-date{color:#64748b;font-size:.75rem}.team-evaluation-details{display:flex;flex-direction:column;gap:12px}.team-mark{align-items:center;background:#f8fafc;border-radius:6px;display:flex;gap:12px;padding:12px}.mark-label{color:#64748b;font-size:.875rem;font-weight:500}.mark-value{color:#1e293b;font-size:1.125rem;font-weight:600}.grade-badge{border-radius:4px;color:#fff;font-size:.75rem;font-weight:600;padding:4px 8px}.team-feedback{margin-top:12px}.feedback-label{color:#64748b;display:block;font-size:.875rem;font-weight:500;margin-bottom:6px}.feedback-text{background:#f8fafc;border-left:3px solid #3b82f6;border-radius:6px;color:#374151;font-size:.875rem;line-height:1.5;margin:0;padding:12px}.individual-evaluation-details h6{color:#374151;font-size:.875rem;font-weight:600;letter-spacing:.05em;margin:0 0 12px;text-transform:uppercase}.individual-marks-list{display:flex;flex-direction:column;gap:12px}.individual-mark-item{background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;padding:12px}.student-mark-info{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.mark-details{align-items:center;display:flex;gap:8px}.individual-feedback{border-top:1px solid #f1f5f9;margin-top:8px;padding-top:8px}.individual-feedback .feedback-text{background:#fff;border-left:3px solid #6b7280;font-size:.8125rem;margin:0}.final-results-section{background:linear-gradient(135deg,#f0fdf4,#dcfce7);border:1px solid #22c55e;border-radius:8px;margin-top:32px;padding:24px}.final-results-section h4{align-items:center;color:#15803d;display:flex;font-size:1.5rem;font-weight:600;gap:8px;margin:0 0 20px}.final-results-section h4:before{content:"🏆";font-size:1.25rem}.team-final-summary{margin-bottom:24px}.team-final-summary h5{color:#166534;font-size:1.125rem;font-weight:600;margin:0 0 12px}.team-summary-stats{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.summary-stat{align-items:center;background:#fff;border:1px solid #bbf7d0;border-radius:6px;display:flex;justify-content:space-between;padding:12px 16px}.individual-final-results h5{color:#166534;font-size:1.125rem;font-weight:600;margin:0 0 16px}.individual-results-table{background:#fff;border:1px solid #bbf7d0;border-radius:8px;overflow:hidden}.results-table-header{background:linear-gradient(135deg,#22c55e,#16a34a);color:#fff;font-size:.875rem;font-weight:600}.results-table-header,.results-table-row{grid-gap:12px;display:grid;gap:12px;grid-template-columns:2fr 1fr 1fr 1fr 1fr 1fr;padding:12px 16px}.results-table-row{align-items:center;border-bottom:1px solid #f0fdf4}.results-table-row:last-child{border-bottom:none}.results-table-row:nth-child(2n){background:#f8fafc}.student-info{display:flex;flex-direction:column;gap:2px}.student-name{color:#1e293b;font-size:.875rem;font-weight:500}.student-id{color:#64748b;font-size:.75rem}.board-average,.final-mark,.supervisor-mark{color:#374151;font-size:.875rem;font-weight:500}.final-grade{border-radius:4px;color:#fff;font-size:.75rem;font-weight:600;padding:4px 8px;text-align:center}.final-gpa{color:#374151;font-size:.875rem;font-weight:600}.calculation-details{border-top:1px solid #bbf7d0;margin-top:20px;padding-top:16px}.calculation-details h6{color:#166534;font-size:.875rem;font-weight:600;letter-spacing:.05em;margin:0 0 8px;text-transform:uppercase}.calculation-explanation{background:#fff;border:1px solid #bbf7d0;border-radius:6px;color:#374151;font-size:.875rem;line-height:1.5;margin:0;padding:12px}.detailed-evaluation-footer{align-items:center;background:#f8fafc;border-radius:0 0 12px 12px;border-top:1px solid #e2e8f0;display:flex;justify-content:space-between;padding:20px 24px}.close-detailed-btn{background:#fff;border:1px solid #d1d5db;border-radius:6px;color:#64748b;cursor:pointer;font-size:.875rem;font-weight:500;padding:12px 24px;transition:all .3s ease}.close-detailed-btn:hover{background:#f9fafb;border-color:#9ca3af;color:#374151}.download-results-btn{align-items:center;background:linear-gradient(135deg,#3b82f6,#1e40af);border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:.875rem;font-weight:500;gap:8px;padding:12px 20px;transition:all .3s ease}.download-results-btn:hover{background:linear-gradient(135deg,#1e40af,#1e3a8a);box-shadow:0 4px 8px -2px #3b82f666;transform:translateY(-1px)}@media (max-width:1024px){.supervisor-teams-grid{grid-template-columns:1fr}.board-eval-boards-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.board-eval-teams-grid,.faculty-evaluations-grid{grid-template-columns:1fr}.results-table-header,.results-table-row{grid-template-columns:1fr;text-align:left}.results-table-header span,.results-table-row>*{border-bottom:1px solid #f0fdf4;padding:8px 0}.results-table-header span:before{content:attr(data-label) ": ";display:inline-block;font-weight:600;width:120px}}@media (max-width:768px){.board-eval-main-container{padding:16px}.board-eval-page-header{padding:24px 20px}.board-eval-page-header h2{font-size:2rem}.board-eval-board-card,.board-eval-team-card,.supervisor-team-card{padding:20px}.board-eval-phase-buttons,.board-eval-team-actions{flex-direction:column}.detailed-evaluation-modal{margin:1%;width:98%}.detailed-evaluation-content{padding:16px}.board-eval-member-fields,.team-summary-stats{grid-template-columns:1fr}}@media (max-width:480px){.board-eval-page-header h2{font-size:1.75rem}.board-eval-selection-section h3,.board-eval-teams-section h3,.supervisor-teams-section h3{font-size:1.5rem}.team-card-header{align-items:flex-start}.board-eval-team-meta,.team-card-header{flex-direction:column;gap:8px}.progress-stats{grid-template-columns:1fr}}.board-eval-board-card,.board-eval-team-card,.supervisor-team-card{animation:fadeIn .3s ease-out}.board-eval-modal::-webkit-scrollbar,.detailed-evaluation-modal::-webkit-scrollbar{width:8px}.board-eval-modal::-webkit-scrollbar-track,.detailed-evaluation-modal::-webkit-scrollbar-track{background:#f1f5f9}.board-eval-modal::-webkit-scrollbar-thumb,.detailed-evaluation-modal::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}.board-eval-modal::-webkit-scrollbar-thumb:hover,.detailed-evaluation-modal::-webkit-scrollbar-thumb:hover{background:#94a3b8}@media print{.board-eval-main-container{background:#fff;box-shadow:none}.board-eval-page-header{background:#fff;border:1px solid #ccc}.board-eval-board-card,.board-eval-team-card,.supervisor-team-card{border:1px solid #ccc;box-shadow:none;break-inside:avoid;page-break-inside:avoid}.board-eval-modal-overlay{display:none}}.faculty-board-evaluation-dashboard-container{background:#f8f9fa;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;min-height:100vh;padding:24px}.faculty-board-evaluation-page-header-section{background:#fff;border:1px solid #e9ecef;border-radius:12px;box-shadow:0 2px 8px #0000000f;margin-bottom:32px;padding:32px}.faculty-board-evaluation-header-content{text-align:center}.faculty-board-evaluation-main-title{color:#1a365d;font-size:2.5rem;font-weight:600;letter-spacing:-.5px;margin:0 0 8px}.faculty-board-evaluation-subtitle{color:#64748b;font-size:1.125rem;font-weight:400;margin:0}.faculty-board-evaluation-loading-teams-container,.faculty-board-evaluation-main-loading-container{align-items:center;background:#fff;border:1px solid #e9ecef;border-radius:12px;display:flex;justify-content:center;padding:60px}.faculty-board-evaluation-button-loading-spinner,.faculty-board-evaluation-loading-spinner,.faculty-board-evaluation-teams-loading-spinner{animation:spin 1s linear infinite;color:#3b82f6;margin-right:12px}.faculty-board-evaluation-loading-text,.faculty-board-evaluation-teams-loading-text{color:#64748b;font-size:1.125rem;font-weight:500}.faculty-board-supervised-teams-comprehensive-section{background:#fff;border:1px solid #e9ecef;border-radius:12px;box-shadow:0 2px 8px #0000000f;margin-bottom:32px;padding:32px}.faculty-board-supervised-teams-header{align-items:center;border-bottom:2px solid #f1f5f9;display:flex;justify-content:space-between;margin-bottom:24px;padding-bottom:16px}.faculty-board-supervised-teams-title{color:#1a365d;font-size:1.5rem;font-weight:600;margin:0}.faculty-board-supervised-teams-count-badge{background:#e0e7ff;border-radius:8px;color:#3730a3;font-size:.875rem;font-weight:600;padding:8px 16px}.faculty-board-supervised-teams-detailed-grid{grid-gap:24px;display:grid;gap:24px}.faculty-board-supervised-team-comprehensive-card{background:#fafbfc;border:2px solid #e2e8f0;border-radius:16px;padding:24px;transition:all .3s ease}.faculty-board-supervised-team-comprehensive-card:hover{border-color:#cbd5e1;box-shadow:0 4px 12px #00000014}.faculty-board-team-comprehensive-header{margin-bottom:24px}.faculty-board-team-header-primary{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:12px}.faculty-board-team-name-title{color:#1a365d;font-size:1.375rem;font-weight:600;margin:0}.faculty-board-team-status-indicators{display:flex;flex-wrap:wrap;gap:8px}.faculty-board-team-phase-indicator{border-radius:6px;font-size:.75rem;font-weight:600;letter-spacing:.5px;padding:6px 12px;text-transform:uppercase}.faculty-board-team-phase-indicator.phase-A{background:#dbeafe;color:#1e40af}.faculty-board-team-phase-indicator.phase-B{background:#fef3c7;color:#92400e}.faculty-board-team-phase-indicator.phase-C{background:#d1fae5;color:#065f46}.faculty-board-team-status-indicator{border-radius:6px;font-size:.75rem;font-weight:600;padding:6px 12px;text-transform:capitalize}.faculty-board-team-status-indicator.status-active{background:#d1fae5;color:#065f46}.faculty-board-team-status-indicator.status-recruiting{background:#fef3c7;color:#92400e}.faculty-board-team-meta-info{display:flex;flex-wrap:wrap;gap:16px}.faculty-board-team-meta-item{color:#64748b;font-size:.875rem}.faculty-board-team-members-comprehensive-section{background:#fff;border:1px solid #e2e8f0;border-radius:12px;margin-bottom:20px;padding:20px}.faculty-board-team-members-section-title{color:#1a365d;font-size:1.125rem;font-weight:600;margin:0 0 16px}.faculty-board-team-members-detailed-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.faculty-board-team-member-detailed-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:16px;transition:all .3s ease}.faculty-board-team-member-detailed-card:hover{border-color:#cbd5e1;box-shadow:0 2px 8px #0000000d}.faculty-board-member-profile-section{align-items:center;display:flex;gap:12px;margin-bottom:12px}.faculty-board-member-avatar-container{position:relative}.faculty-board-member-avatar-image{border:2px solid #e2e8f0;border-radius:50%;height:48px;object-fit:cover;width:48px}.faculty-board-member-avatar-placeholder{background:#3b82f6;font-size:1.125rem;font-weight:600;height:48px;width:48px}.faculty-board-member-avatar-placeholder,.faculty-board-member-leader-badge{align-items:center;border-radius:50%;color:#fff;display:flex;justify-content:center}.faculty-board-member-leader-badge{background:#f59e0b;font-size:.625rem;height:20px;position:absolute;right:-4px;top:-4px;width:20px}.faculty-board-member-name{color:#1a365d;font-size:1rem;font-weight:600;margin:0 0 4px}.faculty-board-member-role-badge{border-radius:4px;font-size:.75rem;font-weight:500;padding:4px 8px}.faculty-board-member-role-badge.role-leader{background:#fef3c7;color:#92400e}.faculty-board-member-role-badge.role-member{background:#e0e7ff;color:#3730a3}.faculty-board-member-academic-details{grid-gap:8px;display:grid;gap:8px}.faculty-board-member-detail-row{align-items:center;display:flex;justify-content:space-between}.faculty-board-member-detail-label{color:#64748b;font-size:.875rem;font-weight:500}.faculty-board-member-detail-value{color:#1a365d;font-size:.875rem;font-weight:500;text-align:right}.faculty-board-member-cgpa-value{border-radius:4px;font-weight:600;padding:4px 8px}.faculty-board-member-cgpa-value.excellent{background:#dcfce7;color:#15803d}.faculty-board-member-cgpa-value.good{background:#dbeafe;color:#1d4ed8}.faculty-board-member-cgpa-value.average{background:#fef3c7;color:#a16207}.faculty-board-member-cgpa-value.below-average{background:#fee2e2;color:#dc2626}.faculty-board-evaluation-selection-comprehensive-section{background:#fff;border:1px solid #e9ecef;border-radius:12px;box-shadow:0 2px 8px #0000000f;margin-bottom:32px;padding:32px}.faculty-board-evaluation-boards-header{align-items:center;border-bottom:2px solid #f1f5f9;display:flex;justify-content:space-between;margin-bottom:24px;padding-bottom:16px}.faculty-board-evaluation-boards-title{color:#1a365d;font-size:1.5rem;font-weight:600;margin:0}.faculty-board-evaluation-boards-count{background:#e0f2fe;border-radius:8px;color:#0369a1;font-size:.875rem;font-weight:600;padding:8px 16px}.faculty-board-evaluation-boards-comprehensive-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(400px,1fr))}.faculty-board-evaluation-board-comprehensive-card{background:#fafbfc;border:2px solid #e2e8f0;border-radius:16px;cursor:pointer;padding:24px;transition:all .3s ease}.faculty-board-evaluation-board-comprehensive-card:hover{border-color:#3b82f6;box-shadow:0 4px 12px #3b82f626}.faculty-board-evaluation-board-comprehensive-card.board-selected{background:#eff6ff;border-color:#3b82f6;box-shadow:0 4px 12px #3b82f626}.faculty-board-evaluation-card-header-section{margin-bottom:20px}.faculty-board-evaluation-board-identification{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.faculty-board-evaluation-board-name{color:#1a365d;font-size:1.25rem;font-weight:600;margin:0}.faculty-board-evaluation-board-number-badge{background:#3b82f6;border-radius:6px;color:#fff;font-size:.75rem;font-weight:600;padding:6px 12px}.faculty-board-evaluation-board-statistics{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.faculty-board-evaluation-board-stat-item{text-align:center}.faculty-board-evaluation-stat-label{color:#64748b;display:block;font-size:.75rem;font-weight:500;margin-bottom:4px}.faculty-board-evaluation-stat-value{color:#1a365d;display:block;font-size:1rem;font-weight:600}.faculty-board-evaluation-faculty-members-section{background:#fff;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:16px;padding:16px}.faculty-board-evaluation-faculty-section-title{color:#1a365d;font-size:.875rem;font-weight:600;letter-spacing:.5px;margin:0 0 12px;text-transform:uppercase}.faculty-board-evaluation-faculty-members-grid{grid-gap:12px;display:grid;gap:12px}.faculty-board-evaluation-faculty-member-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;padding:12px}.faculty-board-evaluation-faculty-member-name{color:#1a365d;font-size:.875rem;font-weight:600;margin:0 0 8px}.faculty-board-evaluation-faculty-member-details{grid-gap:4px;display:grid;gap:4px}.faculty-board-evaluation-faculty-detail-item{align-items:center;display:flex;justify-content:space-between}.faculty-board-evaluation-faculty-detail-label{color:#64748b;font-size:.75rem;font-weight:500}.faculty-board-evaluation-faculty-detail-value{color:#374151;font-size:.75rem;font-weight:500;text-align:right}.faculty-board-evaluation-phase-selection-comprehensive-section{background:#fff;border:1px solid #e9ecef;border-radius:12px;box-shadow:0 2px 8px #0000000f;margin-bottom:32px;padding:32px}.faculty-board-evaluation-phase-selection-title{color:#1a365d;font-size:1.5rem;font-weight:600;margin:0 0 8px}.faculty-board-evaluation-phase-selection-description{color:#64748b;font-size:1rem;margin:0 0 24px}.faculty-board-evaluation-phase-selector-container{display:flex;gap:16px;justify-content:center}.faculty-board-evaluation-phase-selection-button{background:#fff;border:2px solid #e2e8f0;border-radius:12px;cursor:pointer;min-width:200px;padding:20px;transition:all .3s ease}.faculty-board-evaluation-phase-selection-button:hover{border-color:#3b82f6;box-shadow:0 4px 12px #3b82f626}.faculty-board-evaluation-phase-selection-button.phase-button-active{background:#eff6ff;border-color:#3b82f6;box-shadow:0 4px 12px #3b82f626}.faculty-board-evaluation-phase-button-content{text-align:center}.faculty-board-evaluation-phase-button-label{color:#1a365d;display:block;font-size:1.125rem;font-weight:600;margin-bottom:4px}.faculty-board-evaluation-phase-button-description{color:#64748b;display:block;font-size:.875rem}.faculty-board-evaluation-teams-comprehensive-section{background:#fff;border:1px solid #e9ecef;border-radius:12px;box-shadow:0 2px 8px #0000000f;margin-bottom:32px;padding:32px}.faculty-board-evaluation-teams-section-header{align-items:center;border-bottom:2px solid #f1f5f9;display:flex;justify-content:space-between;margin-bottom:24px;padding-bottom:16px}.faculty-board-evaluation-teams-section-title{color:#1a365d;font-size:1.5rem;font-weight:600;margin:0}.faculty-board-evaluation-teams-count-info{background:#f0fdf4;border-radius:8px;color:#166534;font-size:.875rem;font-weight:600;padding:8px 16px}.faculty-board-evaluation-teams-comprehensive-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(500px,1fr))}.faculty-board-evaluation-team-comprehensive-card{background:#fafbfc;border:2px solid #e2e8f0;border-radius:16px;padding:24px;transition:all .3s ease}.faculty-board-evaluation-team-comprehensive-card.team-evaluated{background:#f0fdf4;border-color:#10b981}.faculty-board-evaluation-team-comprehensive-card.team-pending{background:#fffbeb;border-color:#f59e0b}.faculty-board-evaluation-team-comprehensive-card:hover{box-shadow:0 4px 12px #00000014}.faculty-board-detailed-evaluation-modal-overlay,.faculty-board-evaluation-modal-overlay{align-items:center;background:#0f172a80;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.faculty-board-detailed-evaluation-modal-container,.faculty-board-evaluation-modal-container{background:#fff;border-radius:16px;box-shadow:0 20px 25px -5px #0000001a;max-height:90vh;max-width:800px;overflow-y:auto;width:100%}.faculty-board-detailed-evaluation-modal-header,.faculty-board-evaluation-modal-header{align-items:flex-start;background:#f8fafc;border-bottom:1px solid #e2e8f0;border-radius:16px 16px 0 0;display:flex;justify-content:space-between;padding:24px}.faculty-board-detailed-evaluation-modal-title,.faculty-board-evaluation-modal-title{color:#1a365d;font-size:1.5rem;font-weight:600;margin:0}.faculty-board-evaluation-modal-subtitle{color:#64748b;font-size:.875rem;margin-top:4px}.faculty-board-detailed-evaluation-modal-close-button,.faculty-board-evaluation-modal-close-button{background:none;border:none;border-radius:4px;color:#64748b;cursor:pointer;font-size:1.25rem;padding:4px;transition:all .2s ease}.faculty-board-detailed-evaluation-modal-close-button:hover,.faculty-board-evaluation-modal-close-button:hover{background:#e2e8f0;color:#374151}.faculty-board-detailed-evaluation-modal-content,.faculty-board-evaluation-modal-content{padding:24px}.faculty-board-detailed-evaluation-modal-footer,.faculty-board-evaluation-modal-footer{background:#f8fafc;border-radius:0 0 16px 16px;border-top:1px solid #e2e8f0;display:flex;gap:12px;justify-content:flex-end;padding:24px}.faculty-board-evaluation-form-group{margin-bottom:20px}.faculty-board-evaluation-form-label{color:#374151;display:block;font-size:.875rem;font-weight:600;margin-bottom:8px}.faculty-board-evaluation-form-textarea{border:2px solid #e2e8f0;border-radius:8px;font-size:.875rem;padding:12px;resize:vertical;transition:border-color .2s ease;width:100%}.faculty-board-evaluation-form-textarea:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.faculty-board-evaluation-evaluate-button,.faculty-board-evaluation-modal-cancel-button,.faculty-board-evaluation-modal-submit-button,.faculty-board-view-detailed-evaluation-button{align-items:center;border:none;border-radius:8px;cursor:pointer;display:inline-flex;font-size:.875rem;font-weight:600;gap:8px;padding:10px 20px;transition:all .3s ease}.faculty-board-evaluation-modal-cancel-button{background:#f1f5f9;color:#64748b}.faculty-board-evaluation-modal-cancel-button:hover{background:#e2e8f0;color:#374151}.faculty-board-evaluation-evaluate-button,.faculty-board-evaluation-modal-submit-button{background:#3b82f6;color:#fff}.faculty-board-evaluation-evaluate-button:hover,.faculty-board-evaluation-modal-submit-button:hover{background:#2563eb;box-shadow:0 4px 12px #3b82f64d}.faculty-board-evaluation-evaluate-button.evaluation-completed{background:#10b981}.faculty-board-evaluation-evaluate-button.evaluation-completed:hover{background:#059669}.faculty-board-view-detailed-evaluation-button{background:#0ea5e9;color:#fff;font-size:.75rem;padding:8px 12px}.faculty-board-view-detailed-evaluation-button:hover{background:#0284c7}@media (max-width:768px){.faculty-board-evaluation-dashboard-container{padding:16px}.faculty-board-evaluation-boards-comprehensive-grid,.faculty-board-evaluation-teams-comprehensive-grid{grid-template-columns:1fr}.faculty-board-evaluation-phase-selector-container{flex-direction:column}.faculty-board-evaluation-phase-selection-button{min-width:auto}.faculty-board-team-members-detailed-grid{grid-template-columns:1fr}}.faculty-board-evaluation-no-boards-comprehensive-message,.faculty-board-evaluation-no-teams-comprehensive-message{background:#fafbfc;border:2px dashed #cbd5e1;border-radius:12px;padding:60px 20px;text-align:center}.faculty-board-evaluation-no-boards-icon,.faculty-board-evaluation-no-teams-icon{color:#cbd5e1;font-size:3rem;margin-bottom:16px}.faculty-board-evaluation-no-boards-title,.faculty-board-evaluation-no-teams-title{color:#64748b;font-size:1.25rem;font-weight:600;margin:0 0 8px}.faculty-board-evaluation-no-boards-description,.faculty-board-evaluation-no-teams-description{color:#94a3b8;font-size:1rem;margin:0 0 4px}.faculty-board-evaluation-no-boards-contact{color:#94a3b8;font-size:.875rem;margin:0}.board-evaluation-main-container{background:#fafbfc;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;margin:0 auto;max-width:1400px;min-height:100vh;padding:24px}.board-evaluation-page-header{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:16px;box-shadow:0 8px 32px #667eea26;color:#fff;margin-bottom:40px;padding:32px;text-align:center}.board-evaluation-title{font-size:2.5rem;font-weight:700;letter-spacing:-.5px;margin:0 0 12px}.board-evaluation-subtitle{font-size:1.1rem;font-weight:400;margin:0;opacity:.9}.board-evaluation-loading-teams,.board-evaluation-main-loading{align-items:center;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000f;display:flex;flex-direction:column;justify-content:center;padding:60px 20px}.board-evaluation-spinner{animation:spin 1s linear infinite;color:#667eea;font-size:2rem;margin-bottom:16px}.board-evaluation-loading-text{color:#64748b;font-size:1.1rem;font-weight:500}.board-evaluation-section-title{border-left:4px solid #667eea;color:#1e293b;font-size:1.75rem;font-weight:700;margin:0 0 24px;padding-left:12px}.board-evaluation-supervisor-teams-section{margin-bottom:48px}.board-evaluation-supervisor-teams-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fill,minmax(400px,1fr))}.board-evaluation-supervisor-team-card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 16px #00000014;padding:24px;transition:all .3s ease}.board-evaluation-supervisor-team-card:hover{box-shadow:0 8px 32px #0000001f;transform:translateY(-4px)}.board-evaluation-team-card-header{align-items:center;border-bottom:2px solid #f1f5f9;display:flex;justify-content:space-between;margin-bottom:20px;padding-bottom:16px}.board-evaluation-team-name{color:#1e293b;font-size:1.5rem;font-weight:700;margin:0}.board-evaluation-team-phase-badge{border-radius:20px;font-size:.875rem;font-weight:600;letter-spacing:.5px;padding:6px 14px;text-transform:uppercase}.board-evaluation-phase-a{background:#dbeafe;color:#1e40af}.board-evaluation-phase-b{background:#fef3c7;color:#d97706}.board-evaluation-phase-c{background:#d1fae5;color:#059669}.board-evaluation-team-evaluation-phases{display:flex;flex-direction:column;gap:16px}.board-evaluation-phase-evaluation-status{background:#f8fafc;border:2px solid #e2e8f0;border-radius:12px;padding:16px}.board-evaluation-phase-evaluation-status.board-evaluation-completed{background:#ecfdf5;border-color:#10b981}.board-evaluation-phase-evaluation-status.board-evaluation-partial{background:#fffbeb;border-color:#f59e0b}.board-evaluation-phase-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.board-evaluation-phase-name{color:#374151;font-size:1rem;font-weight:600}.board-evaluation-evaluation-progress{background:#667eea;border-radius:12px;color:#fff;font-size:.75rem;font-weight:600;padding:4px 10px}.board-evaluation-phase-actions{align-items:center;display:flex;justify-content:space-between}.board-evaluation-board-name{color:#64748b;font-size:.875rem;font-weight:500}.board-evaluation-view-detailed-evaluation-btn{background:#667eea;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.875rem;font-weight:600;padding:8px 16px;transition:background-color .2s ease}.board-evaluation-view-detailed-evaluation-btn:hover{background:#5a6fd8}.board-evaluation-no-evaluation{color:#9ca3af;font-style:italic;padding:8px;text-align:center}.board-evaluation-selection-section{margin-bottom:48px}.board-evaluation-boards-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fill,minmax(420px,1fr))}.board-evaluation-enhanced-board-card{background:#fff;border:2px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 16px #00000014;overflow:hidden;transition:all .3s ease}.board-evaluation-board-card{cursor:pointer;padding:24px;transition:all .3s ease}.board-evaluation-board-card:hover{background:#f8fafc}.board-evaluation-board-card.board-evaluation-selected{background:#eef2ff;border-color:#667eea}.board-evaluation-card-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.board-evaluation-board-name{color:#1e293b;font-size:1.375rem;font-weight:700;margin:0}.board-evaluation-board-number{background:#667eea;border-radius:20px;color:#fff;font-size:.75rem;font-weight:700;padding:6px 12px;text-transform:uppercase}.board-evaluation-board-stats{display:flex;gap:16px;margin-bottom:12px}.board-evaluation-stat{background:#f1f5f9;border-radius:8px;color:#475569;font-size:.875rem;font-weight:500;padding:6px 12px}.board-evaluation-board-role{color:#64748b;font-size:.875rem;font-weight:500}.board-evaluation-faculty-details-section{background:#f8fafc;border-top:1px solid #e2e8f0;padding:20px 24px}.board-evaluation-faculty-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.board-evaluation-faculty-title{color:#374151;font-size:1rem;font-weight:600;margin:0}.board-evaluation-view-faculty-btn{align-items:center;background:#0000;border:2px solid #667eea;border-radius:8px;color:#667eea;cursor:pointer;display:flex;font-size:.875rem;font-weight:600;gap:6px;padding:6px 12px;transition:all .2s ease}.board-evaluation-view-faculty-btn:hover{background:#667eea;color:#fff}.board-evaluation-faculty-preview{display:flex;flex-direction:column;gap:12px}.board-evaluation-faculty-preview-item{align-items:center;display:flex;gap:12px}.board-evaluation-faculty-avatar{align-items:center;background:#667eea;border-radius:50%;color:#fff;display:flex;font-size:.875rem;font-weight:600;height:36px;justify-content:center;width:36px}.board-evaluation-faculty-info{flex:1 1}.board-evaluation-faculty-name{color:#374151;display:block;font-size:.875rem}.board-evaluation-faculty-dept{color:#64748b;display:block;font-size:.75rem}.board-evaluation-more-faculty{color:#667eea;font-size:.875rem;font-weight:500;padding:8px;text-align:center}.board-evaluation-phase-selection{margin-bottom:32px}.board-evaluation-phase-selector{display:flex;gap:12px;justify-content:center;margin-top:16px}.board-evaluation-phase-btn{background:#fff;border:2px solid #e2e8f0;border-radius:12px;color:#64748b;cursor:pointer;font-size:1rem;font-weight:600;min-width:120px;padding:12px 28px;transition:all .3s ease}.board-evaluation-phase-btn:hover{border-color:#667eea;color:#667eea;transform:translateY(-2px)}.board-evaluation-phase-btn.board-evaluation-active{background:#667eea;border-color:#667eea;box-shadow:0 4px 12px #667eea4d;color:#fff;transform:translateY(-2px)}.board-evaluation-teams-section{margin-bottom:48px}.board-evaluation-teams-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fill,minmax(500px,1fr))}.board-evaluation-enhanced-team-card{background:#fff;border:2px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 16px #00000014;padding:24px;transition:all .3s ease}.board-evaluation-enhanced-team-card:hover{box-shadow:0 8px 32px #0000001f;transform:translateY(-4px)}.board-evaluation-enhanced-team-card.board-evaluation-evaluated{background:#f6fffa;border-color:#10b981}.board-evaluation-team-status{align-items:center;display:flex;gap:8px}.board-evaluation-evaluation-status{border-radius:16px;font-size:.75rem;font-weight:600;letter-spacing:.5px;padding:4px 12px;text-transform:uppercase}.board-evaluation-evaluation-status.board-evaluation-completed{background:#d1fae5;color:#059669}.board-evaluation-evaluation-status.board-evaluation-pending{background:#fef3c7;color:#d97706}.board-evaluation-supervisor-badge{background:#ddd6fe;border-radius:12px;color:#7c3aed;font-size:.75rem;font-weight:600;padding:4px 10px}.board-evaluation-team-info{color:#64748b;line-height:1.6;margin:16px 0}.board-evaluation-team-info p{margin:4px 0}.board-evaluation-team-members-section{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;margin:20px 0;padding:20px}.board-evaluation-members-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.board-evaluation-members-title{color:#374151;font-size:1.125rem;font-weight:600;margin:0}.board-evaluation-members-actions{display:flex;gap:8px}.board-evaluation-toggle-members-btn,.board-evaluation-view-full-details-btn{align-items:center;background:#0000;border:1px solid #667eea;border-radius:8px;color:#667eea;cursor:pointer;display:flex;font-size:.75rem;font-weight:500;gap:4px;padding:6px 12px;transition:all .2s ease}.board-evaluation-toggle-members-btn:hover,.board-evaluation-view-full-details-btn:hover{background:#667eea;color:#fff}.board-evaluation-team-members-list{display:flex;flex-wrap:wrap;gap:8px}.board-evaluation-member-chip{align-items:center;background:#fff;border:1px solid #d1d5db;border-radius:20px;color:#374151;display:flex;font-size:.875rem;gap:6px;padding:6px 12px}.board-evaluation-leader-icon{color:#f59e0b}.board-evaluation-more-members{background:#e2e8f0;border-radius:20px;color:#64748b;font-size:.875rem;font-weight:500;padding:6px 12px}.board-evaluation-expanded-members-details{border-top:1px solid #e2e8f0;margin-top:16px;padding-top:16px}.board-evaluation-members-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.board-evaluation-member-detail-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:16px;transition:all .2s ease}.board-evaluation-member-detail-card:hover{border-color:#667eea;transform:translateY(-2px)}.board-evaluation-member-header{align-items:center;display:flex;gap:12px;margin-bottom:12px}.board-evaluation-avatar-fallback,.board-evaluation-member-avatar{align-items:center;background:#667eea;border-radius:50%;color:#fff;display:flex;font-size:1rem;font-weight:600;height:40px;justify-content:center;width:40px}.board-evaluation-member-basic-info{flex:1 1}.board-evaluation-member-name{font-size:1rem;margin:0 0 4px}.board-evaluation-member-role{align-items:center;border-radius:12px;display:inline-flex;font-size:.75rem;font-weight:500;gap:4px;padding:3px 8px}.board-evaluation-member-role.leader{background:#fef3c7;color:#d97706}.board-evaluation-member-role.member{background:#e2e8f0;color:#64748b}.board-evaluation-member-details{display:flex;flex-direction:column;gap:6px}.board-evaluation-detail-row{display:flex;font-size:.875rem;justify-content:space-between}.board-evaluation-detail-label{color:#64748b;font-weight:500}.board-evaluation-detail-value{color:#374151;font-weight:600;text-align:right}.board-evaluation-cgpa-value{font-weight:700}.board-evaluation-team-actions{display:flex;justify-content:center;margin-top:20px}.board-evaluation-evaluate-btn{background:#667eea;border:none;border-radius:12px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;min-width:160px;padding:12px 24px;transition:all .3s ease}.board-evaluation-evaluate-btn:hover{background:#5a6fd8;transform:translateY(-2px)}.board-evaluation-evaluate-btn.board-evaluation-completed{background:#10b981}.board-evaluation-evaluate-btn.board-evaluation-completed:hover{background:#059669}.board-evaluation-board-details-modal-overlay,.board-evaluation-detailed-modal-overlay,.board-evaluation-modal-overlay,.board-evaluation-team-details-modal-overlay{align-items:center;background:#0009;display:flex;height:100%;justify-content:center;left:0;padding:20px;position:fixed;top:0;width:100%;z-index:1000}.board-evaluation-board-details-modal,.board-evaluation-detailed-modal,.board-evaluation-modal,.board-evaluation-team-details-modal{background:#fff;border-radius:20px;box-shadow:0 20px 64px #0003;max-height:90vh;max-width:900px;overflow-y:auto;position:relative;width:100%}.board-evaluation-board-details-header,.board-evaluation-detailed-header,.board-evaluation-modal-header,.board-evaluation-team-details-header{align-items:center;background:#f8fafc;border-bottom:2px solid #f1f5f9;border-radius:20px 20px 0 0;display:flex;justify-content:space-between;padding:24px 32px}.board-evaluation-board-details-title,.board-evaluation-detailed-title,.board-evaluation-modal-title,.board-evaluation-team-details-title{color:#1e293b;flex:1 1;font-size:1.5rem;font-weight:700;margin:0}.board-evaluation-board-details-close-btn,.board-evaluation-detailed-close-btn,.board-evaluation-modal-close,.board-evaluation-team-details-close-btn{align-items:center;background:#ef4444;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:1.125rem;height:36px;justify-content:center;transition:all .2s ease;width:36px}.board-evaluation-board-details-close-btn:hover,.board-evaluation-detailed-close-btn:hover,.board-evaluation-modal-close:hover,.board-evaluation-team-details-close-btn:hover{background:#dc2626;transform:scale(1.1)}.board-evaluation-board-details-content,.board-evaluation-detailed-content,.board-evaluation-modal-content,.board-evaluation-team-details-content{padding:32px}.board-evaluation-board-details-footer,.board-evaluation-detailed-footer,.board-evaluation-modal-footer,.board-evaluation-team-details-footer{background:#f8fafc;border-radius:0 0 20px 20px;border-top:2px solid #f1f5f9;display:flex;gap:12px;justify-content:flex-end;padding:20px 32px}.board-evaluation-type-selector{background:#f8fafc;border:2px solid #e2e8f0;border-radius:12px;margin-bottom:32px;padding:24px}.board-evaluation-selector-title{color:#374151;font-size:1.25rem;font-weight:600;margin:0 0 16px}.board-evaluation-radio-group{display:flex;flex-direction:column;gap:12px}.board-evaluation-radio-label{align-items:center;background:#fff;border:2px solid #e2e8f0;border-radius:12px;cursor:pointer;display:flex;gap:12px;padding:16px;transition:all .2s ease}.board-evaluation-radio-label:hover{background:#eef2ff;border-color:#667eea}.board-evaluation-radio-input{accent-color:#667eea;height:20px;width:20px}.board-evaluation-radio-text{color:#374151;font-size:1rem;font-weight:500}.board-evaluation-form-title{border-bottom:2px solid #f1f5f9;color:#1e293b;font-size:1.375rem;font-weight:600;margin:0 0 24px;padding-bottom:12px}.board-evaluation-form-group{margin-bottom:24px}.board-evaluation-form-label{color:#374151;display:block;font-size:1rem;font-weight:600;margin-bottom:8px}.board-evaluation-textarea{border:2px solid #e2e8f0;border-radius:12px;font-family:inherit;font-size:1rem;padding:12px 16px;resize:vertical;transition:border-color .2s ease;width:100%}.board-evaluation-textarea:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.board-evaluation-member-evaluation{background:#f8fafc;border:2px solid #e2e8f0;border-radius:16px;margin-bottom:32px;padding:24px}.board-evaluation-member-info-header{margin-bottom:8px}.board-evaluation-member-name{color:#1e293b;font-size:1.25rem;font-weight:600;margin:0}.board-evaluation-leader-badge{align-items:center;background:#fef3c7;border-radius:12px;color:#d97706;display:inline-flex;font-size:.75rem;font-weight:600;gap:4px;margin-left:8px;padding:4px 10px}.board-evaluation-member-academic-info{display:flex;gap:16px;margin-bottom:16px}.board-evaluation-member-program{background:#e2e8f0;border-radius:8px;color:#64748b;font-size:.875rem;font-weight:500;padding:4px 8px}.board-evaluation-member-cgpa{border-radius:8px;font-size:.875rem;font-weight:600;padding:4px 8px}.board-evaluation-cancel-btn{background:#6b7280;border:none;border-radius:12px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:12px 24px;transition:all .2s ease}.board-evaluation-cancel-btn:hover{background:#4b5563}.board-evaluation-submit-btn{align-items:center;background:#10b981;border:none;border-radius:12px;color:#fff;cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:8px;padding:12px 24px;transition:all .2s ease}.board-evaluation-submit-btn:hover{background:#059669}.board-evaluation-submit-btn:disabled{background:#9ca3af;cursor:not-allowed}.board-evaluation-close-board-details-btn,.board-evaluation-close-detailed-modal-btn,.board-evaluation-close-team-details-btn{background:#667eea;border:none;border-radius:12px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:12px 24px;transition:all .2s ease}.board-evaluation-close-board-details-btn:hover,.board-evaluation-close-detailed-modal-btn:hover,.board-evaluation-close-team-details-btn:hover{background:#5a6fd8}.board-evaluation-progress-summary{background:#f0f9ff;border:2px solid #bae6fd;border-radius:12px;margin-bottom:32px;padding:24px}.board-evaluation-summary-title{color:#0c4a6e;font-size:1.25rem;font-weight:600;margin:0 0 16px}.board-evaluation-progress-stats{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.board-evaluation-progress-stat{display:flex;flex-direction:column;gap:4px}.board-evaluation-stat-label{color:#64748b;font-size:.875rem;font-weight:500}.board-evaluation-stat-value{color:#1e293b;font-size:1.125rem;font-weight:700}.board-evaluation-stat-value.board-evaluation-completed{color:#059669}.board-evaluation-stat-value.board-evaluation-in-progress{color:#d97706}.board-evaluation-final-results-section{margin-bottom:32px}.board-evaluation-results-title{color:#1e293b;font-size:1.375rem;font-weight:600;margin:0 0 20px}.board-evaluation-results-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.board-evaluation-student-final-result{background:#f8fafc;border:2px solid #e2e8f0;border-radius:16px;padding:20px}.board-evaluation-student-result-header{border-bottom:2px solid #f1f5f9;margin-bottom:16px;padding-bottom:12px}.board-evaluation-student-name{color:#1e293b;font-size:1.125rem;margin:0 0 8px}.board-evaluation-grade-display{align-items:center;display:flex;gap:8px}.board-evaluation-final-mark{color:#1e293b;font-size:1.5rem;font-weight:700}.board-evaluation-letter-grade{border-radius:8px;color:#fff;font-size:.875rem;font-weight:600;padding:4px 8px}.board-evaluation-gpa{color:#64748b;font-size:.875rem;font-weight:500}.board-evaluation-result-breakdown{color:#64748b;font-size:.875rem;line-height:1.6}.board-evaluation-faculty-evaluations-section{margin-bottom:32px}.board-evaluation-evaluations-title{color:#1e293b;font-size:1.375rem;font-weight:600;margin:0 0 20px}.board-evaluation-evaluations-list{display:flex;flex-direction:column;gap:20px}.board-evaluation-faculty-evaluation-item{background:#fff;border:2px solid #e2e8f0;border-radius:16px;padding:24px}.board-evaluation-faculty-evaluation-header{align-items:center;border-bottom:2px solid #f1f5f9;display:flex;justify-content:space-between;margin-bottom:16px;padding-bottom:12px}.board-evaluation-faculty-name{color:#1e293b;font-size:1.125rem;font-weight:600;margin:0}.board-evaluation-evaluation-type-badge{background:#dbeafe;border-radius:12px;color:#1e40af;font-size:.75rem;font-weight:600;padding:4px 12px;text-transform:uppercase}.board-evaluation-submission-date{color:#64748b;font-size:.875rem;font-weight:500}.board-evaluation-evaluation-details{color:#374151;line-height:1.6}.board-evaluation-individual-mark-item{align-items:center;background:#f8fafc;border-radius:8px;display:flex;gap:8px;margin-bottom:8px;padding:8px 12px}.board-evaluation-student-name{font-weight:600;min-width:120px}.board-evaluation-mark{color:#667eea;font-weight:700;min-width:60px}.board-evaluation-feedback{color:#64748b;flex:1 1;font-style:italic}.board-evaluation-no-boards-message,.board-evaluation-no-teams-message{background:#fff;border:2px dashed #e2e8f0;border-radius:16px;color:#64748b;padding:60px 20px;text-align:center}.board-evaluation-empty-state{margin:0 auto;max-width:400px}.board-evaluation-empty-state p{font-size:1.125rem;line-height:1.6;margin:8px 0}@media (max-width:768px){.board-evaluation-main-container{padding:16px}.board-evaluation-page-header{padding:24px 16px}.board-evaluation-title{font-size:2rem}.board-evaluation-boards-grid,.board-evaluation-supervisor-teams-grid,.board-evaluation-teams-grid{grid-template-columns:1fr}.board-evaluation-phase-selector{align-items:center;flex-direction:column}.board-evaluation-members-actions{flex-direction:column;gap:8px}.board-evaluation-board-details-modal,.board-evaluation-detailed-modal,.board-evaluation-modal,.board-evaluation-team-details-modal{margin:10px;max-height:calc(100vh - 20px);max-width:calc(100vw - 20px)}.board-evaluation-board-details-header,.board-evaluation-detailed-header,.board-evaluation-modal-header,.board-evaluation-team-details-header{padding:16px 20px}.board-evaluation-board-details-content,.board-evaluation-detailed-content,.board-evaluation-modal-content,.board-evaluation-team-details-content{padding:20px}}.grade-input-container{margin-bottom:16px}.grade-input-wrapper{margin-bottom:8px}.grade-input-label{color:#374151;display:block;font-size:.875rem;font-weight:600;margin-bottom:4px}.grade-input{border:2px solid #e2e8f0;border-radius:8px;font-size:1rem;padding:10px 14px;transition:border-color .2s ease;width:100%}.grade-input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.grade-input.error{border-color:#ef4444}.grade-preview{background:#f0f9ff;border:1px solid #bae6fd;border-radius:8px;padding:12px}.grade-display{align-items:center;display:flex;gap:12px}.percentage-display{color:#1e293b;font-size:1.125rem;font-weight:700}.letter-grade{border-radius:6px;font-size:.875rem;font-weight:700;padding:4px 8px}.gpa-display{color:#64748b;font-size:.875rem;font-weight:600}.grade-error{color:#ef4444;font-size:.875rem;font-weight:500;margin-top:4px}@media print{.board-evaluation-main-container{background:#fff;box-shadow:none}.board-evaluation-board-details-modal-overlay,.board-evaluation-detailed-modal-overlay,.board-evaluation-modal-overlay,.board-evaluation-team-details-modal-overlay{background:none;position:static}.board-evaluation-board-details-modal,.board-evaluation-detailed-modal,.board-evaluation-modal,.board-evaluation-team-details-modal{box-shadow:none;max-height:none;overflow:visible}}.board-evaluation-board-details-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0009;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.board-evaluation-board-details-modal{animation:modalSlideIn .3s ease-out;background:#fff;border-radius:16px;box-shadow:0 20px 60px #00000026;max-height:85vh;max-width:900px;overflow:hidden;width:90%}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.board-evaluation-board-details-header{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:16px 16px 0 0;color:#fff;display:flex;justify-content:between;padding:24px}.board-evaluation-board-details-title{flex:1 1;font-size:24px;font-weight:700;margin:0}.board-evaluation-board-details-close-btn{align-items:center;background:#fff3;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:18px;height:40px;justify-content:center;transition:all .2s ease;width:40px}.board-evaluation-board-details-close-btn:hover{background:#ffffff4d;transform:scale(1.1)}.board-evaluation-board-details-content{max-height:calc(85vh - 100px);overflow-y:auto;padding:0}.board-evaluation-board-info{background:#f8fafc;border-bottom:1px solid #e2e8f0;padding:24px}.board-evaluation-board-summary h4{align-items:center;color:#1e293b;display:flex;font-size:18px;font-weight:600;gap:8px;margin-bottom:16px}.board-evaluation-board-summary h4:before{content:"📋";font-size:20px}.board-evaluation-board-summary p{color:#475569;font-size:14px;margin:8px 0}.board-evaluation-board-summary strong{color:#1e293b;display:inline-block;font-weight:600;width:120px}.board-evaluation-faculty-members-grid{padding:24px}.board-evaluation-faculty-members-grid h4{align-items:center;color:#1e293b;display:flex;font-size:18px;font-weight:600;gap:8px;margin-bottom:20px}.board-evaluation-faculty-members-grid h4:before{content:"👥";font-size:20px}.board-evaluation-faculty-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.board-evaluation-faculty-member-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 2px 8px #0000000a;padding:20px;transition:all .2s ease}.board-evaluation-faculty-member-card:hover{border-color:#667eea;box-shadow:0 4px 20px #00000014;transform:translateY(-2px)}.board-evaluation-faculty-card-header{align-items:center;display:flex;gap:12px;margin-bottom:16px}.board-evaluation-faculty-avatar-large{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;color:#fff;display:flex;font-size:20px;font-weight:700;height:50px;justify-content:center;width:50px}.board-evaluation-faculty-member-name{color:#1e293b;font-size:16px;font-weight:600;margin:0}.board-evaluation-faculty-role{background:#f1f5f9;border-radius:12px;color:#64748b;font-size:12px;padding:4px 8px}.board-evaluation-faculty-member-details{space-y:8px}.board-evaluation-faculty-detail-row{align-items:center;border-bottom:1px solid #f1f5f9;display:flex;justify-content:space-between;padding:6px 0}.board-evaluation-faculty-detail-row:last-child{border-bottom:none}.board-evaluation-faculty-detail-label{color:#64748b;font-size:13px;font-weight:500}.board-evaluation-faculty-detail-value{color:#1e293b;font-size:13px;font-weight:500;text-align:right}.board-evaluation-board-details-footer{background:#f8fafc;border-top:1px solid #e2e8f0;display:flex;justify-content:flex-end;padding:20px 24px}.board-evaluation-close-board-details-btn{background:#667eea;border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;padding:12px 24px;transition:all .2s ease}.board-evaluation-close-board-details-btn:hover{background:#5a67d8;transform:translateY(-1px)}.faculty-board-member-modal-backdrop{align-items:center;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#ffffffd9;bottom:0;display:flex;justify-content:center;left:0;padding:16px;position:fixed;right:0;top:0;z-index:1000}.faculty-board-member-display-container{animation:compactModalSlideIn .3s ease-out;background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 10px 40px #00000014;max-height:85vh;max-width:480px;overflow:hidden;width:100%}@keyframes compactModalSlideIn{0%{opacity:0;transform:translateY(-20px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.faculty-board-member-header-section{align-items:center;background:#f9fafb;border-bottom:1px solid #e5e7eb;border-radius:12px 12px 0 0;display:flex;justify-content:space-between;padding:16px 20px}.faculty-board-member-modal-title{color:#111827;font-size:1.125rem;font-weight:600;letter-spacing:-.01em;margin:0}.faculty-board-member-close-button{align-items:center;background:#f3f4f6;border:1px solid #d1d5db;border-radius:50%;color:#6b7280;cursor:pointer;display:flex;font-size:16px;height:32px;justify-content:center;transition:all .2s ease;width:32px}.faculty-board-member-close-button:hover{background:#e5e7eb;border-color:#9ca3af;color:#374151}.faculty-board-member-content-wrapper{max-height:calc(85vh - 120px);overflow-y:auto;scrollbar-color:#d1d5db #f9fafb;scrollbar-width:thin}.faculty-board-member-content-wrapper::-webkit-scrollbar{width:4px}.faculty-board-member-content-wrapper::-webkit-scrollbar-track{background:#f9fafb}.faculty-board-member-content-wrapper::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:2px}.faculty-board-member-summary-section{background:#fff;border-bottom:1px solid #f3f4f6;padding:20px}.faculty-board-member-info-container{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:16px}.faculty-board-member-info-container h4{align-items:center;border-bottom:1px solid #e5e7eb;color:#111827;display:flex;font-size:1rem;font-weight:600;gap:8px;margin:0 0 12px;padding-bottom:8px}.faculty-board-member-info-container h4:before{background:#eff6ff;border-radius:6px;content:"📋";font-size:1rem;padding:4px}.faculty-board-member-info-container p{color:#4b5563;font-size:.875rem;line-height:1.4;margin:6px 0;padding:4px 0}.faculty-board-member-info-container p:not(:last-child){border-bottom:1px solid #f3f4f6;margin-bottom:6px;padding-bottom:6px}.faculty-board-member-info-container strong{color:#111827;display:inline-block;font-size:.8125rem;font-weight:500;margin-right:6px;min-width:80px}.faculty-board-member-listing-section{padding:20px}.faculty-board-member-listing-section h4{align-items:center;color:#111827;display:flex;font-size:1rem;font-weight:600;gap:8px;margin:0 0 16px}.faculty-board-member-listing-section h4:before{background:#f0fdf4;border-radius:6px;content:"👥";font-size:1rem;padding:4px}.faculty-board-member-cards-grid{display:flex;flex-direction:column;gap:12px}.faculty-board-member-individual-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 1px 3px #0000000d;padding:16px;transition:all .2s ease}.faculty-board-member-individual-card:hover{border-color:#3b82f6;box-shadow:0 4px 12px #3b82f614}.faculty-board-member-card-top{align-items:center;border-bottom:1px solid #f3f4f6;display:flex;gap:12px;margin-bottom:12px;padding-bottom:10px}.faculty-board-member-profile-circle{align-items:center;background:linear-gradient(135deg,#3b82f6,#1d4ed8);border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:.875rem;font-weight:600;height:36px;justify-content:center;width:36px}.faculty-board-member-basic-details{flex:1 1;min-width:0}.faculty-board-member-full-name{color:#111827;font-size:.9375rem;font-weight:600;line-height:1.3;margin:0 0 4px}.faculty-board-member-position-tag{background:#eff6ff;border:1px solid #dbeafe;border-radius:12px;color:#1d4ed8;display:inline-block;font-size:.75rem;font-weight:500;padding:2px 8px}.faculty-board-member-details-list{display:flex;flex-direction:column;gap:6px}.faculty-board-member-detail-item{align-items:center;background:#f9fafb;border-radius:6px;display:flex;gap:8px;justify-content:space-between;padding:6px 10px}.faculty-board-member-label-text{color:#6b7280;flex-shrink:0;font-size:.8125rem;font-weight:500;min-width:60px}.faculty-board-member-value-text{color:#111827;flex:1 1;font-size:.8125rem;font-weight:400;text-align:right;word-break:break-word}.faculty-board-member-footer-section{background:#f9fafb;border-radius:0 0 12px 12px;border-top:1px solid #e5e7eb;display:flex;justify-content:center;padding:16px 20px}.faculty-board-member-close-action-btn{background:#3b82f6;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.875rem;font-weight:500;min-width:80px;padding:8px 20px;transition:all .2s ease}.faculty-board-member-close-action-btn:hover{background:#2563eb}@media (max-width:640px){.faculty-board-member-modal-backdrop{padding:12px}.faculty-board-member-display-container{max-height:90vh;max-width:100%}.faculty-board-member-footer-section,.faculty-board-member-header-section,.faculty-board-member-listing-section,.faculty-board-member-summary-section{padding:16px}.faculty-board-member-modal-title{font-size:1rem}.faculty-board-member-close-button{font-size:14px;height:28px;width:28px}.faculty-board-member-individual-card{padding:12px}.faculty-board-member-card-top{gap:10px}.faculty-board-member-profile-circle{font-size:.75rem;height:32px;width:32px}}@media (max-width:480px){.faculty-board-member-modal-backdrop{padding:8px}.faculty-board-member-header-section{padding:12px 16px}.faculty-board-member-modal-title{font-size:.9375rem}.faculty-board-member-info-container,.faculty-board-member-listing-section,.faculty-board-member-summary-section{padding:12px}.faculty-board-member-individual-card{padding:10px}.faculty-board-member-detail-item{align-items:flex-start;flex-direction:column;gap:2px;padding:4px 8px}.faculty-board-member-value-text{text-align:left}.faculty-board-member-footer-section{padding:12px 16px}.faculty-board-member-close-action-btn{font-size:.8125rem;padding:6px 16px}}@media (max-width:360px){.faculty-board-member-display-container{border-radius:8px}.faculty-board-member-header-section{border-radius:8px 8px 0 0}.faculty-board-member-footer-section{border-radius:0 0 8px 8px}.faculty-board-member-modal-title{font-size:.875rem}.faculty-board-member-info-container h4,.faculty-board-member-listing-section h4{font-size:.9375rem}.faculty-board-member-full-name{font-size:.875rem}}.faculty-board-member-close-action-btn:focus,.faculty-board-member-close-button:focus{outline:2px solid #3b82f6;outline-offset:2px}@media (prefers-contrast:high){.faculty-board-member-individual-card{border-width:2px}.faculty-board-member-close-action-btn{border:1px solid #111827}}@media (prefers-reduced-motion:reduce){.faculty-board-member-display-container{animation:none}.faculty-board-member-close-action-btn,.faculty-board-member-close-button,.faculty-board-member-individual-card{transition:none}}@media (prefers-color-scheme:dark){.faculty-board-member-display-container{background:#fff;border-color:#e5e7eb}.faculty-board-member-header-section{background:#f9fafb}}@media print{.faculty-board-member-modal-backdrop{background:none;position:static}.faculty-board-member-display-container{border:1px solid #000;box-shadow:none;max-height:none}.faculty-board-member-close-button,.faculty-board-member-footer-section{display:none}}@media (max-height:500px) and (orientation:landscape){.faculty-board-member-display-container{max-height:95vh}.faculty-board-member-content-wrapper{max-height:calc(95vh - 100px)}.faculty-board-member-listing-section,.faculty-board-member-summary-section{padding:12px 16px}}.team-modal-backdrop{align-items:center;background-color:#0006;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.team-modal-container{background:#fff;border-radius:12px;box-shadow:0 10px 30px #00000026;display:flex;flex-direction:column;max-height:80vh;max-width:700px;overflow:hidden;width:100%}.team-modal-header{align-items:center;background:#f8fafc;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:20px 24px}.team-modal-title{color:#1f2937;font-size:18px;font-weight:600;margin:0}.team-modal-close-button{background:none;border:none;border-radius:6px;color:#6b7280;cursor:pointer;font-size:16px;padding:8px;transition:all .2s}.team-modal-close-button:hover{background-color:#f3f4f6;color:#374151}.team-modal-body{flex:1 1;overflow-y:auto;padding:0 24px}.team-members-section,.team-overview-section{margin-bottom:24px;padding:16px 0}.team-section-title{border-bottom:2px solid #e5e7eb;color:#374151;font-size:16px;font-weight:600;margin:0 0 16px;padding-bottom:8px}.team-overview-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:16px}.team-info-item{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;display:flex;flex-direction:column;gap:4px;padding:12px}.team-info-label{color:#6b7280;font-size:12px;font-weight:500;letter-spacing:.05em;text-transform:uppercase}.team-info-value{color:#1f2937;font-size:14px;font-weight:600}.team-status-completed{color:#059669!important}.team-status-pending{color:#d97706!important}.team-project-description{background:#f0f9ff;border:1px solid #e0f2fe;border-radius:8px;padding:16px}.team-project-text{color:#374151;font-size:14px;line-height:1.6;margin:8px 0 0}.team-members-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.team-member-card{background:#fff;border:1px solid #e5e7eb;border-radius:10px;box-shadow:0 2px 8px #0000000f;padding:16px;transition:all .2s}.team-member-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-1px)}.team-member-header{align-items:center;border-bottom:1px solid #f3f4f6;display:flex;gap:12px;margin-bottom:16px;padding-bottom:12px}.team-member-avatar{border:2px solid #e5e7eb;border-radius:50%;height:48px;overflow:hidden;width:48px}.team-avatar-image{height:100%;object-fit:cover;width:100%}.team-avatar-fallback{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;font-size:18px;font-weight:600;height:100%;justify-content:center;width:100%}.team-member-info{flex:1 1}.team-member-name{color:#1f2937;font-size:16px;font-weight:600;margin:0 0 4px}.team-member-role{align-items:center;background:#f3f4f6;border-radius:12px;color:#6b7280;display:flex;font-size:12px;font-weight:500;gap:4px;padding:4px 8px;width:fit-content}.team-member-role.leader{background:#fef3c7;color:#d97706}.team-member-stats{grid-gap:8px;display:grid;gap:8px;grid-template-columns:1fr 1fr}.team-stat-item{display:flex;flex-direction:column;gap:2px}.team-stat-label{color:#9ca3af;font-size:11px;font-weight:500;letter-spacing:.05em;text-transform:uppercase}.team-stat-value{color:#374151;font-size:13px;font-weight:600;word-break:break-word}.team-cgpa-value{font-weight:700}.team-modal-footer{background:#f8fafc;border-top:1px solid #e5e7eb;display:flex;justify-content:center;padding:16px 24px}.team-modal-close-footer-btn{background:#3b82f6;border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:500;padding:10px 24px;transition:all .2s}.team-modal-close-footer-btn:hover{background:#2563eb;transform:translateY(-1px)}@media (max-width:768px){.team-modal-backdrop{padding:10px}.team-modal-container{max-height:90vh;max-width:95vw}.team-modal-body,.team-modal-footer,.team-modal-header{padding-left:16px;padding-right:16px}.team-member-stats,.team-members-grid,.team-overview-grid{grid-template-columns:1fr}.team-modal-title{font-size:16px}}@media (max-width:480px){.team-modal-container{border-radius:8px;max-height:95vh}.team-member-header{flex-direction:column;gap:8px;text-align:center}.team-member-avatar{height:40px;width:40px}.team-avatar-fallback{font-size:16px}}.faculty-team-member-expansion-container{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 2px 8px #0000000f;margin-top:20px;padding:24px;transition:all .3s ease}.faculty-member-details-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));max-width:100%}.faculty-individual-member-card{background:#fff;border:1px solid #e5e7eb;border-radius:10px;box-shadow:0 1px 4px #0000000a;padding:20px;position:relative;transition:all .2s ease}.faculty-individual-member-card:hover{border-color:#3b82f6;box-shadow:0 4px 12px #3b82f61a;transform:translateY(-2px)}.faculty-member-card-header{align-items:center;border-bottom:1px solid #f1f5f9;display:flex;gap:16px;margin-bottom:20px;padding-bottom:16px}.faculty-member-profile-image{align-items:center;background:#f9fafb;border:2px solid #e5e7eb;border-radius:50%;display:flex;flex-shrink:0;height:56px;justify-content:center;overflow:hidden;width:56px}.faculty-member-profile-image img{height:100%;object-fit:cover;width:100%}.faculty-member-initials-circle{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;color:#fff;display:flex;font-size:20px;font-weight:600;height:100%;justify-content:center;width:100%}.faculty-member-primary-info{flex:1 1;min-width:0}.faculty-member-full-name{color:#1f2937;font-size:18px;font-weight:600;line-height:1.3;margin:0 0 6px}.faculty-member-position-tag{align-items:center;background:#f0f9ff;border:1px solid #bae6fd;border-radius:20px;color:#0369a1;display:inline-flex;font-size:13px;font-weight:500;gap:6px;padding:4px 12px;text-transform:capitalize}.faculty-member-position-tag.leader{background:#fef3c7;border-color:#fed7aa;color:#d97706}.faculty-member-position-tag svg{font-size:12px}.faculty-member-academic-details{display:flex;flex-direction:column;gap:12px}.faculty-detail-information-row{align-items:flex-start;border-bottom:1px solid #f8fafc;display:flex;gap:16px;justify-content:space-between;padding:8px 0}.faculty-detail-information-row:last-child{border-bottom:none}.faculty-detail-field-label{color:#6b7280;flex-shrink:0;font-size:14px;font-weight:500;min-width:80px}.faculty-detail-field-content{color:#374151;flex:1 1;font-size:14px;font-weight:400;text-align:right;word-break:break-word}.faculty-cgpa-display-value{font-size:15px;font-weight:600}@media (max-width:768px){.faculty-team-member-expansion-container{margin-top:16px;padding:16px}.faculty-member-details-grid{gap:12px;grid-template-columns:1fr}.faculty-individual-member-card{padding:16px}.faculty-member-card-header{gap:12px;margin-bottom:16px;padding-bottom:12px}.faculty-member-profile-image{height:48px;width:48px}.faculty-member-initials-circle{font-size:18px}.faculty-member-full-name{font-size:16px}.faculty-detail-information-row{align-items:flex-start;flex-direction:column;gap:4px;padding:10px 0}.faculty-detail-field-label{min-width:auto}.faculty-detail-field-content{text-align:left}}@media (max-width:480px){.faculty-individual-member-card,.faculty-team-member-expansion-container{border-radius:8px;padding:12px}.faculty-member-card-header{gap:10px;margin-bottom:12px}.faculty-member-profile-image{height:44px;width:44px}.faculty-member-initials-circle{font-size:16px}.faculty-member-full-name{font-size:15px}.faculty-member-position-tag{font-size:12px;padding:3px 10px}.faculty-detail-information-row{padding:8px 0}.faculty-detail-field-content,.faculty-detail-field-label{font-size:13px}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.faculty-team-member-expansion-container{animation:fadeInUp .3s ease-out}@media (prefers-reduced-motion:reduce){.faculty-individual-member-card,.faculty-team-member-expansion-container{animation:none;transition:none}.faculty-individual-member-card:hover{transform:none}}@media (prefers-contrast:high){.faculty-individual-member-card{border-color:#000}.faculty-detail-field-content,.faculty-detail-field-label{color:#000}}.faculty-announcements-main-container{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;margin:0 auto;max-width:1400px;padding:24px}.faculty-announcements-header-section{align-items:flex-start;border-bottom:2px solid #f0f4f8;display:flex;justify-content:space-between;margin-bottom:32px;padding-bottom:20px}.faculty-announcements-page-title{color:#2c3e50;font-size:28px;font-weight:600;line-height:1.2;margin:0}.faculty-announcements-controls-wrapper{align-items:center;display:flex;flex-wrap:wrap;gap:16px}.faculty-announcements-search-input{background:#fff;border:2px solid #e2e8f0;border-radius:8px;font-size:14px;padding:12px 16px;transition:all .3s ease;width:300px}.faculty-announcements-search-input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.faculty-announcements-create-button{align-items:center;background:linear-gradient(135deg,#3b82f6,#2563eb);border:none;border-radius:8px;box-shadow:0 2px 4px #3b82f633;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;padding:12px 20px;transition:all .3s ease}.faculty-announcements-create-button:hover{background:linear-gradient(135deg,#2563eb,#1d4ed8);box-shadow:0 4px 12px #3b82f64d;transform:translateY(-1px)}.faculty-announcements-button-icon{font-size:16px;font-weight:700}.faculty-announcements-table-wrapper{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000000d;overflow:hidden}.faculty-announcements-table-container{overflow-x:auto}.faculty-announcements-data-table{border-collapse:collapse;font-size:14px;width:100%}.faculty-announcements-table-head{background:linear-gradient(135deg,#f8fafc,#f1f5f9)}.faculty-announcements-header-row{border-bottom:2px solid #e2e8f0}.faculty-announcements-header-cell{color:#374151;font-size:12px;font-weight:600;letter-spacing:.5px;padding:16px 12px;text-align:left;text-transform:uppercase}.faculty-announcements-data-row{border-bottom:1px solid #f1f5f9;cursor:pointer;transition:all .2s ease}.faculty-announcements-data-row:hover{background:#f8fafc}.faculty-announcements-data-cell{padding:16px 12px;vertical-align:top}.faculty-announcements-title-wrapper{word-wrap:break-word;color:#1f2937;font-weight:500;max-width:200px}.faculty-announcements-content-preview{color:#6b7280;line-height:1.4;max-width:250px}.faculty-announcements-author-info{color:#4b5563;font-weight:500}.faculty-announcements-date-display{color:#6b7280;font-size:13px}.faculty-announcements-audience-tag{background:#e0f2fe;border:1px solid #b3e5fc;border-radius:20px;color:#0277bd;display:inline-block;font-size:12px;font-weight:500;padding:6px 12px}.faculty-announcements-status-badge{border-radius:20px;display:inline-block;font-size:12px;font-weight:500;letter-spacing:.5px;padding:6px 12px;text-transform:uppercase}.faculty-announcements-status-badge.status-draft{background:#fef3e2;border:1px solid #fed7aa;color:#d97706}.faculty-announcements-status-badge.status-published{background:#d1fae5;border:1px solid #a7f3d0;color:#047857}.faculty-announcements-status-badge.status-archived{background:#f3f4f6;border:1px solid #d1d5db;color:#6b7280}.faculty-announcements-action-buttons{display:flex;gap:8px}.faculty-announcements-delete-button,.faculty-announcements-edit-button{border:none;border-radius:6px;cursor:pointer;font-size:14px;padding:8px 12px;transition:all .2s ease}.faculty-announcements-edit-button{background:#e0f2fe;border:1px solid #b3e5fc;color:#0277bd}.faculty-announcements-edit-button:hover{background:#b3e5fc;transform:translateY(-1px)}.faculty-announcements-delete-button{background:#fee2e2;border:1px solid #fecaca;color:#dc2626}.faculty-announcements-delete-button:hover{background:#fecaca;transform:translateY(-1px)}.faculty-announcements-empty-state{background:#f8fafc;border-radius:12px;margin-top:20px;padding:60px 20px;text-align:center}.faculty-announcements-empty-icon{font-size:64px;margin-bottom:16px;opacity:.6}.faculty-announcements-empty-title{color:#374151;font-size:20px;font-weight:600;margin:0 0 8px}.faculty-announcements-empty-text{color:#6b7280;line-height:1.5;margin:0 0 24px}.faculty-announcements-empty-action-button{background:linear-gradient(135deg,#3b82f6,#2563eb);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:12px 24px;transition:all .3s ease}.faculty-announcements-empty-action-button:hover{background:linear-gradient(135deg,#2563eb,#1d4ed8);transform:translateY(-1px)}.faculty-announcements-modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.faculty-announcements-modal-container{background:#fff;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a;max-height:90vh;max-width:600px;overflow-y:auto;width:100%}.faculty-announcements-modal-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:24px 24px 16px}.faculty-announcements-modal-title{color:#1f2937;font-size:20px;font-weight:600;margin:0}.faculty-announcements-modal-close-button{background:none;border:none;color:#6b7280;cursor:pointer;font-size:24px;line-height:1;padding:4px;transition:color .2s ease}.faculty-announcements-modal-close-button:hover{color:#374151}.faculty-announcements-modal-content{padding:24px}.faculty-announcements-form-group{margin-bottom:20px}.faculty-announcements-form-group.half-width{flex:1 1;min-width:200px}.faculty-announcements-form-row{display:flex;gap:16px}.faculty-announcements-form-label{color:#374151;display:block;font-size:14px;font-weight:500;margin-bottom:8px}.faculty-announcements-required{color:#dc2626}.faculty-announcements-form-input,.faculty-announcements-form-select,.faculty-announcements-form-textarea{background:#fff;border:2px solid #e5e7eb;border-radius:8px;font-family:inherit;font-size:14px;padding:12px 16px;transition:all .3s ease;width:100%}.faculty-announcements-form-input:focus,.faculty-announcements-form-select:focus,.faculty-announcements-form-textarea:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.faculty-announcements-form-textarea{line-height:1.5;min-height:120px;resize:vertical}.faculty-announcements-modal-footer{border-top:1px solid #e5e7eb;display:flex;gap:12px;justify-content:flex-end;padding:16px 24px 24px}.faculty-announcements-modal-cancel-button,.faculty-announcements-modal-submit-button{border:2px solid #0000;border-radius:8px;cursor:pointer;font-size:14px;font-weight:500;padding:12px 20px;transition:all .3s ease}.faculty-announcements-modal-cancel-button{background:#f8fafc;border-color:#e5e7eb;color:#6b7280}.faculty-announcements-modal-cancel-button:hover{background:#f1f5f9;color:#374151}.faculty-announcements-modal-submit-button{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff}.faculty-announcements-modal-submit-button:hover{background:linear-gradient(135deg,#2563eb,#1d4ed8);transform:translateY(-1px)}@media (max-width:1024px){.faculty-announcements-main-container{padding:16px}.faculty-announcements-header-section{align-items:stretch;flex-direction:column;gap:16px}.faculty-announcements-controls-wrapper{justify-content:space-between}.faculty-announcements-search-input{width:250px}}@media (max-width:768px){.faculty-announcements-page-title{font-size:24px}.faculty-announcements-controls-wrapper{flex-direction:column;gap:12px}.faculty-announcements-search-input{width:100%}.faculty-announcements-create-button{justify-content:center;width:100%}.faculty-announcements-data-table{font-size:13px}.faculty-announcements-data-cell,.faculty-announcements-header-cell{padding:12px 8px}.faculty-announcements-content-preview,.faculty-announcements-title-wrapper{max-width:150px}.faculty-announcements-form-row{flex-direction:column;gap:0}.faculty-announcements-modal-footer{flex-direction:column}.faculty-announcements-modal-cancel-button,.faculty-announcements-modal-submit-button{justify-content:center;width:100%}}@media (max-width:640px){.faculty-announcements-main-container{margin:10px;padding:12px}.faculty-announcements-modal-overlay{padding:10px}.faculty-announcements-modal-container{max-height:95vh}.faculty-announcements-modal-content{padding:16px}.faculty-announcements-action-buttons{flex-direction:column;width:100%}.faculty-announcements-delete-button,.faculty-announcements-edit-button{justify-content:center;width:100%}}@media (max-width:768px){.faculty-announcements-table-container{border:1px solid #e5e7eb;border-radius:8px}.faculty-announcements-data-table{min-width:700px}}@media print{.faculty-announcements-action-buttons,.faculty-announcements-controls-wrapper,.faculty-announcements-modal-overlay{display:none!important}.faculty-announcements-main-container{box-shadow:none;padding:0}.faculty-announcements-data-cell,.faculty-announcements-data-table,.faculty-announcements-header-cell{border:1px solid #000}}.faculty-support-container{padding:20px}.faculty-support-header{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;color:#fff;display:flex;flex-direction:column;gap:10px;margin-bottom:30px;padding:20px}.faculty-support-header h2{font-size:28px;margin:0}.faculty-support-header p{margin:0;opacity:.9}.submit-ticket-btn{align-items:center;align-self:flex-start;background:#fff3;border:2px solid #ffffff4d;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-weight:600;gap:8px;padding:12px 24px;transition:all .3s ease}.submit-ticket-btn:hover{background:#ffffff4d;border-color:#ffffff80}.support-modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.support-modal{background:#fff;border-radius:12px;max-height:90vh;max-width:600px;overflow-y:auto;width:90%}.support-modal-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:20px}.support-modal-header h3{color:#374151;margin:0}.close-modal-btn{background:none;border:none;border-radius:4px;color:#6b7280;cursor:pointer;padding:8px;transition:all .2s ease}.close-modal-btn:hover{background:#f3f4f6;color:#374151}.support-form{padding:20px}.support-form .form-group{margin-bottom:20px}.support-form label{color:#374151;display:block;font-weight:600;margin-bottom:6px}.support-form input,.support-form select,.support-form textarea{border:1px solid #d1d5db;border-radius:6px;box-sizing:border-box;font-size:14px;padding:10px 12px;transition:border-color .2s ease;width:100%}.support-form input:focus,.support-form select:focus,.support-form textarea:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.support-form input.error,.support-form textarea.error{border-color:#ef4444}.error-message{color:#ef4444;display:block;font-size:12px;margin-top:4px}.form-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:24px}.cancel-btn{background:#f3f4f6;border:none;border-radius:6px;color:#374151;cursor:pointer;font-weight:500;padding:10px 20px;transition:all .2s ease}.cancel-btn:hover{background:#e5e7eb}.submit-btn{align-items:center;background:#3b82f6;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-weight:500;gap:8px;padding:10px 20px;transition:all .2s ease}.submit-btn:hover:not(:disabled){background:#2563eb}.submit-btn:disabled{cursor:not-allowed;opacity:.6}.tickets-section{margin-top:30px}.tickets-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.tickets-header h3{color:#374151;margin:0}.refresh-btn{align-items:center;background:#f3f4f6;border:none;border-radius:6px;color:#374151;cursor:pointer;display:flex;gap:8px;padding:8px 16px;transition:all .2s ease}.refresh-btn:hover{background:#e5e7eb}.loading-state{align-items:center;color:#6b7280;display:flex;gap:12px;justify-content:center;padding:40px}.no-tickets{color:#6b7280;padding:60px 20px;text-align:center}.no-tickets .empty-icon{color:#d1d5db;font-size:48px;margin-bottom:16px}.no-tickets h4{color:#374151;margin:16px 0 8px}.submit-first-ticket-btn{background:#3b82f6;border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;margin-top:16px;padding:12px 24px;transition:all .2s ease}.submit-first-ticket-btn:hover{background:#2563eb}.tickets-list{grid-gap:16px;display:grid;gap:16px}.ticket-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:20px;transition:all .2s ease}.ticket-card:hover{border-color:#d1d5db;box-shadow:0 4px 12px #0000001a}.ticket-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:16px}.ticket-title h4{color:#374151;font-size:18px;margin:0 0 4px}.ticket-title small{color:#6b7280;font-family:monospace}.ticket-badges{display:flex;gap:8px}.priority-badge,.status-badge{border-radius:4px;font-size:12px;font-weight:600;padding:4px 8px;text-transform:uppercase}.status-open{background:#dbeafe;color:#1e40af}.status-in-progress{background:#fef3c7;color:#d97706}.status-resolved{background:#d1fae5;color:#065f46}.status-closed{background:#f3f4f6;color:#374151}.priority-low{background:#f0f9ff;color:#0369a1}.priority-medium{background:#fffbeb;color:#d97706}.priority-high{background:#fef2f2;color:#dc2626}.priority-critical{background:#7c2d12;color:#fff}.ticket-content{margin-bottom:16px}.ticket-description{color:#4b5563;line-height:1.6;margin-bottom:12px}.admin-response{background:#f8fafc;border-left:4px solid #3b82f6;border-radius:4px;padding:12px}.admin-response h5{color:#3b82f6;font-size:14px;margin:0 0 8px}.admin-response p{color:#374151;margin:0 0 4px}.admin-response small{color:#6b7280}.ticket-footer{border-top:1px solid #f3f4f6;padding-top:12px}.ticket-meta{color:#6b7280;display:flex;font-size:14px;justify-content:space-between}@media (max-width:768px){.faculty-support-header{padding:16px}.support-modal{margin:10px;width:95%}.ticket-header{flex-direction:column;gap:12px}.ticket-badges{align-self:flex-start}.ticket-meta{flex-direction:column;gap:4px}}.spinning{animation:spin 1s linear infinite}.faculty-meeting-scheduler-main-container{background:#fff;border-radius:12px;box-shadow:0 4px 6px #0000000d;color:#2c3e50;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;margin:0 auto 24px;max-width:1200px;padding:32px}.faculty-meeting-scheduler-header-section{align-items:flex-start;border-bottom:2px solid #e8f4f8;display:flex;justify-content:space-between;margin-bottom:40px;padding-bottom:24px}.faculty-meeting-scheduler-title-area{flex:1 1}.faculty-meeting-scheduler-main-title{color:#1e3a8a;font-size:28px;font-weight:700;letter-spacing:-.025em;margin:0 0 8px}.faculty-meeting-scheduler-subtitle{color:#64748b;font-size:16px;font-weight:400;line-height:1.5;margin:0}.faculty-meeting-scheduler-header-actions{align-items:center;display:flex;gap:16px}.faculty-meeting-scheduler-schedule-btn{align-items:center;background:linear-gradient(135deg,#1e3a8a,#3b82f6);border:none;border-radius:8px;box-shadow:0 2px 4px #1e3a8a33;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;padding:12px 24px;transition:all .3s ease}.faculty-meeting-scheduler-schedule-btn:hover{background:linear-gradient(135deg,#1e40af,#2563eb);box-shadow:0 4px 8px #1e3a8a4d;transform:translateY(-1px)}.faculty-meeting-scheduler-schedule-btn:disabled{background:#94a3b8;box-shadow:none;cursor:not-allowed;transform:none}.faculty-meeting-scheduler-refresh-btn{align-items:center;background:#fff;border:2px solid #e2e8f0;border-radius:8px;color:#475569;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;padding:12px 20px;transition:all .3s ease}.faculty-meeting-scheduler-refresh-btn:hover{background:#f8fafc;border-color:#cbd5e1;color:#334155}.faculty-meeting-scheduler-teams-summary{margin-bottom:40px}.faculty-meeting-scheduler-teams-title{color:#1e3a8a;font-size:20px;font-weight:600;margin:0 0 20px}.faculty-meeting-scheduler-teams-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.faculty-meeting-scheduler-team-card{background:#fff;border:2px solid #e2e8f0;border-radius:10px;padding:20px;transition:all .3s ease}.faculty-meeting-scheduler-team-card:hover{border-color:#3b82f6;box-shadow:0 4px 12px #3b82f61a;transform:translateY(-2px)}.faculty-meeting-scheduler-team-card-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.faculty-meeting-scheduler-team-name{color:#1e293b;font-size:16px;font-weight:600;margin:0}.faculty-meeting-scheduler-phase-badge{background:linear-gradient(135deg,#10b981,#059669);border-radius:20px;color:#fff;font-size:12px;font-weight:600;letter-spacing:.5px;padding:4px 12px;text-transform:uppercase}.faculty-meeting-scheduler-team-info{display:flex;gap:20px}.faculty-meeting-scheduler-team-stat{color:#64748b;font-size:14px;font-weight:500}.faculty-meeting-scheduler-no-teams{background:#f8fafc;border:2px dashed #cbd5e1;border-radius:12px;padding:60px 20px;text-align:center}.faculty-meeting-scheduler-empty-icon{font-size:48px;margin-bottom:16px}.faculty-meeting-scheduler-empty-title{color:#475569;font-size:20px;font-weight:600;margin:0 0 8px}.faculty-meeting-scheduler-empty-subtext,.faculty-meeting-scheduler-empty-text{color:#64748b;line-height:1.6;margin:4px 0}.faculty-meeting-scheduler-meetings-section{margin-top:40px}.faculty-meeting-scheduler-meetings-title{color:#1e3a8a;font-size:20px;font-weight:600;margin:0 0 24px}.faculty-meeting-scheduler-loading{align-items:center;display:flex;gap:12px;justify-content:center;padding:40px}.faculty-meeting-scheduler-spinner{animation:spin 1s linear infinite;color:#3b82f6}.faculty-meeting-scheduler-loading-text{color:#64748b;font-weight:500}.faculty-meeting-scheduler-no-meetings{background:#f8fafc;border-radius:12px;padding:60px 20px;text-align:center}.faculty-meeting-scheduler-empty-calendar{color:#cbd5e1;font-size:48px;margin-bottom:16px}.faculty-meeting-scheduler-no-meetings-title{color:#475569;font-size:18px;font-weight:600;margin:0 0 8px}.faculty-meeting-scheduler-no-meetings-text{color:#64748b;margin:0}.faculty-meeting-scheduler-meetings-list{grid-gap:24px;display:grid;gap:24px}.faculty-meeting-scheduler-meeting-card{background:#fff;border:2px solid #e2e8f0;border-radius:12px;padding:24px;transition:all .3s ease}.faculty-meeting-scheduler-meeting-card:hover{border-color:#3b82f6;box-shadow:0 6px 20px #3b82f61a}.faculty-meeting-scheduler-meeting-card-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:20px}.faculty-meeting-scheduler-meeting-title{color:#1e293b;flex:1 1;font-size:18px;font-weight:600;margin:0;padding-right:16px}.faculty-meeting-scheduler-meeting-actions{align-items:center;display:flex;gap:12px}.faculty-meeting-scheduler-status-badge{border-radius:20px;font-size:12px;font-weight:600;letter-spacing:.5px;padding:6px 16px;text-transform:uppercase}.faculty-meeting-scheduler-status-badge.status-scheduled{background:#dbeafe;color:#1e40af}.faculty-meeting-scheduler-status-badge.status-completed{background:#d1fae5;color:#065f46}.faculty-meeting-scheduler-status-badge.status-cancelled{background:#fee2e2;color:#991b1b}.faculty-meeting-scheduler-copy-btn{background:#f1f5f9;border:none;border-radius:6px;color:#475569;cursor:pointer;padding:8px;transition:all .2s ease}.faculty-meeting-scheduler-copy-btn:hover{background:#e2e8f0;color:#334155}.faculty-meeting-scheduler-meeting-details{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin-bottom:20px}.faculty-meeting-scheduler-info-row{align-items:center;display:flex;gap:12px;padding:8px 0}.faculty-meeting-scheduler-info-icon{color:#3b82f6;flex-shrink:0;width:16px}.faculty-meeting-scheduler-info-text{color:#475569;font-size:14px;font-weight:500}.faculty-meeting-scheduler-room-code{background:#f1f5f9;border-radius:4px;color:#1e40af;font-family:Monaco,Courier New,monospace;font-size:12px;font-weight:600;padding:2px 8px}.faculty-meeting-scheduler-meeting-description{background:#f8fafc;border-left:4px solid #3b82f6;border-radius:8px;margin-bottom:20px;padding:16px}.faculty-meeting-scheduler-description-label{color:#1e293b;display:block;font-size:14px;margin-bottom:8px}.faculty-meeting-scheduler-description-text{color:#475569;line-height:1.6;margin:0}.faculty-meeting-scheduler-meeting-footer{align-items:center;border-top:1px solid #e2e8f0;display:flex;gap:20px;justify-content:space-between;padding-top:20px}.faculty-meeting-scheduler-join-btn{align-items:center;background:linear-gradient(135deg,#059669,#10b981);border-radius:8px;box-shadow:0 2px 4px #05966933;color:#fff;display:flex;font-size:14px;font-weight:600;gap:8px;padding:12px 24px;text-decoration:none;transition:all .3s ease}.faculty-meeting-scheduler-join-btn:hover{background:linear-gradient(135deg,#047857,#059669);box-shadow:0 4px 8px #0596694d;color:#fff;text-decoration:none;transform:translateY(-1px)}.faculty-meeting-scheduler-meeting-link{flex:1 1}.faculty-meeting-scheduler-link-label{color:#64748b;font-size:12px}.faculty-meeting-scheduler-link-url{color:#3b82f6;margin-left:8px;text-decoration:none}.faculty-meeting-scheduler-link-url:hover{text-decoration:underline}.faculty-meeting-scheduler-modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.faculty-meeting-scheduler-modal{background:#fff;border-radius:16px;box-shadow:0 20px 25px -5px #0000001a;max-height:90vh;max-width:600px;overflow-y:auto;width:100%}.faculty-meeting-scheduler-modal-header{align-items:center;border-bottom:2px solid #e8f4f8;display:flex;justify-content:space-between;padding:24px 32px}.faculty-meeting-scheduler-modal-title{color:#1e293b;font-size:20px;font-weight:600;margin:0}.faculty-meeting-scheduler-close-btn{align-items:center;background:#f1f5f9;border:none;border-radius:8px;color:#64748b;cursor:pointer;display:flex;height:36px;justify-content:center;padding:8px;transition:all .2s ease;width:36px}.faculty-meeting-scheduler-close-btn:hover{background:#e2e8f0;color:#475569}.faculty-meeting-scheduler-form{padding:32px}.faculty-meeting-scheduler-form-group{margin-bottom:24px}.faculty-meeting-scheduler-form-label{color:#374151;display:block;font-size:14px;font-weight:600;margin-bottom:8px}.faculty-meeting-scheduler-form-input,.faculty-meeting-scheduler-form-select,.faculty-meeting-scheduler-form-textarea{border:2px solid #e5e7eb;border-radius:8px;color:#374151;font-family:inherit;font-size:14px;padding:12px 16px;transition:all .2s ease;width:100%}.faculty-meeting-scheduler-form-input:focus,.faculty-meeting-scheduler-form-select:focus,.faculty-meeting-scheduler-form-textarea:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.faculty-meeting-scheduler-form-input.error,.faculty-meeting-scheduler-form-select.error{border-color:#ef4444}.faculty-meeting-scheduler-form-textarea{min-height:80px;resize:vertical}.faculty-meeting-scheduler-form-row{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 1fr}.faculty-meeting-scheduler-error-message{color:#ef4444;display:block;font-size:12px;margin-top:4px}.faculty-meeting-scheduler-modal-footer{background:#f8fafc;border-radius:0 0 16px 16px;border-top:1px solid #e2e8f0;display:flex;gap:16px;justify-content:flex-end;padding:24px 32px}.faculty-meeting-scheduler-cancel-btn{background:#fff;border:2px solid #e2e8f0;border-radius:8px;color:#64748b;cursor:pointer;font-size:14px;font-weight:600;padding:12px 24px;transition:all .2s ease}.faculty-meeting-scheduler-cancel-btn:hover{background:#f8fafc;border-color:#cbd5e1;color:#475569}.faculty-meeting-scheduler-submit-btn{align-items:center;background:linear-gradient(135deg,#1e3a8a,#3b82f6);border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;padding:12px 24px;transition:all .3s ease}.faculty-meeting-scheduler-submit-btn:hover{background:linear-gradient(135deg,#1e40af,#2563eb);transform:translateY(-1px)}.faculty-meeting-scheduler-submit-btn:disabled{background:#94a3b8;cursor:not-allowed;transform:none}@media (max-width:768px){.faculty-meeting-scheduler-main-container{margin:16px;padding:20px}.faculty-meeting-scheduler-header-section{align-items:flex-start;flex-direction:column;gap:20px}.faculty-meeting-scheduler-header-actions{justify-content:flex-end;width:100%}.faculty-meeting-scheduler-teams-grid{grid-template-columns:1fr}.faculty-meeting-scheduler-meeting-card-header{align-items:flex-start;flex-direction:column;gap:12px}.faculty-meeting-scheduler-meeting-details{grid-template-columns:1fr}.faculty-meeting-scheduler-meeting-footer{align-items:stretch;flex-direction:column;gap:16px}.faculty-meeting-scheduler-form-row{grid-template-columns:1fr}.faculty-meeting-scheduler-modal{margin:20px;max-height:calc(100vh - 40px)}.faculty-meeting-scheduler-modal-footer{flex-direction:column}}@media (max-width:480px){.faculty-meeting-scheduler-main-container{margin:8px;padding:16px}.faculty-meeting-scheduler-form,.faculty-meeting-scheduler-modal-footer,.faculty-meeting-scheduler-modal-header{padding:20px}.faculty-meeting-scheduler-header-actions{flex-direction:column;width:100%}.faculty-meeting-scheduler-refresh-btn,.faculty-meeting-scheduler-schedule-btn{justify-content:center;width:100%}}.CircularProgressbar{vertical-align:middle;width:100%}.CircularProgressbar .CircularProgressbar-path{stroke:#3e98c7;stroke-linecap:round;transition:stroke-dashoffset .5s ease 0s}.CircularProgressbar .CircularProgressbar-trail{stroke:#d6d6d6;stroke-linecap:round}.CircularProgressbar .CircularProgressbar-text{fill:#3e98c7;dominant-baseline:middle;text-anchor:middle;font-size:20px}.CircularProgressbar .CircularProgressbar-background{fill:#d6d6d6}.CircularProgressbar.CircularProgressbar-inverted .CircularProgressbar-background{fill:#3e98c7}.CircularProgressbar.CircularProgressbar-inverted .CircularProgressbar-text{fill:#fff}.CircularProgressbar.CircularProgressbar-inverted .CircularProgressbar-path{stroke:#fff}.CircularProgressbar.CircularProgressbar-inverted .CircularProgressbar-trail{stroke:#0000}.fac-deliverables-main-container{background:linear-gradient(135deg,#f8fafc,#e2e8f0);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;min-height:100vh;padding:2rem}.fac-deliverables-notification{animation:slideInRight .3s ease-out;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-radius:12px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-width:400px;position:fixed;right:2rem;top:2rem;z-index:1100}.fac-deliverables-notification.success{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.fac-deliverables-notification.error{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff}.fac-deliverables-notification.info{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff}.fac-deliverables-notification-content{align-items:center;display:flex;justify-content:space-between;padding:1rem 1.5rem}.fac-deliverables-notification-text{font-size:.95rem;font-weight:500}.fac-deliverables-notification-close{background:none;border:none;border-radius:6px;color:inherit;cursor:pointer;padding:.25rem;transition:background-color .2s}.fac-deliverables-notification-close:hover{background:#fff3}.fac-deliverables-page-header{background:#fff;border:1px solid #e2e8f0;border-radius:20px;box-shadow:0 25px 50px -12px #00000040;color:#1e293b;margin-bottom:2.5rem;padding:2.5rem}.fac-deliverables-title-section{align-items:center;display:flex;gap:1.5rem;margin-bottom:2rem}.fac-deliverables-title-icon{background:linear-gradient(135deg,#3b82f6,#1d4ed8);border-radius:16px;box-shadow:0 10px 15px -3px #3b82f666;padding:1rem}.fac-deliverables-title-icon svg{color:#fff;font-size:1.75rem}.fac-deliverables-main-title{color:#1e293b;font-size:2.5rem;font-weight:700;margin:0}.fac-deliverables-subtitle{color:#64748b;font-size:1.1rem;font-weight:400;margin:.5rem 0 0}.fac-deliverables-tab-navigation{display:flex;gap:1rem}.fac-deliverables-tab-button{align-items:center;background:#f8fafc;border:2px solid #e2e8f0;border-radius:12px;color:#64748b;cursor:pointer;display:flex;font-size:1rem;font-weight:500;gap:.75rem;padding:1rem 2rem;transition:all .3s ease}.fac-deliverables-tab-button:hover{background:#f1f5f9;border-color:#cbd5e1;transform:translateY(-2px)}.fac-deliverables-tab-button.fac-deliverables-tab-active{background:linear-gradient(135deg,#3b82f6,#1d4ed8);border-color:#3b82f6;box-shadow:0 10px 15px -3px #3b82f666;color:#fff}.fac-deliverables-tab-icon{font-size:1.1rem}.fac-deliverables-section-header{align-items:flex-start;background:#fff;border-radius:16px;box-shadow:0 4px 6px -1px #0000001a;display:flex;justify-content:space-between;margin-bottom:2rem;padding:2rem}.fac-deliverables-section-title{color:#1e293b;font-size:1.8rem;font-weight:700;margin:0}.fac-deliverables-section-description{color:#64748b;font-size:1rem;margin:.5rem 0 0}.fac-deliverables-create-button{align-items:center;background:linear-gradient(135deg,#10b981,#059669);border:none;border-radius:12px;box-shadow:0 10px 15px -3px #10b98166;color:#fff;cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:.75rem;padding:1rem 2rem;transition:all .3s ease}.fac-deliverables-create-button:hover{background:linear-gradient(135deg,#059669,#047857);box-shadow:0 20px 25px -5px #10b98166;transform:translateY(-2px)}.fac-deliverables-button-icon{font-size:1.1rem}.fac-deliverables-loading-container{align-items:center;background:#fff;border-radius:16px;box-shadow:0 4px 6px -1px #0000001a;display:flex;justify-content:center;min-height:400px}.fac-deliverables-loading-content{color:#64748b;text-align:center}.fac-deliverables-loading-spinner{animation:spin 1s linear infinite;color:#3b82f6;font-size:2rem;margin-bottom:1rem}.fac-deliverables-loading-content h3{color:#1e293b;font-size:1.25rem;font-weight:600;margin:0 0 .5rem}.fac-deliverables-loading-content p{font-size:.95rem;margin:0}.fac-deliverables-empty-container{align-items:center;background:#fff;border-radius:16px;box-shadow:0 4px 6px -1px #0000001a;display:flex;justify-content:center;min-height:400px}.fac-deliverables-empty-content{max-width:500px;padding:2rem;text-align:center}.fac-deliverables-empty-icon{align-items:center;background:linear-gradient(135deg,#f1f5f9,#e2e8f0);border-radius:20px;display:flex;height:80px;justify-content:center;margin:0 auto 1.5rem;width:80px}.fac-deliverables-empty-icon svg{color:#64748b;font-size:2rem}.fac-deliverables-empty-title{color:#1e293b;font-size:1.5rem;font-weight:700;margin:0 0 1rem}.fac-deliverables-empty-description{color:#64748b;font-size:1rem;line-height:1.6;margin:0 0 2rem}.fac-deliverables-empty-action{align-items:center;background:linear-gradient(135deg,#3b82f6,#1d4ed8);border:none;border-radius:10px;box-shadow:0 4px 6px -1px #3b82f666;color:#fff;cursor:pointer;display:inline-flex;font-weight:500;gap:.5rem;padding:.75rem 1.5rem;transition:all .3s ease}.fac-deliverables-empty-action:hover{box-shadow:0 10px 15px -3px #3b82f666;transform:translateY(-1px)}.fac-deliverables-grid-container{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(400px,1fr))}.fac-deliverables-card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 6px -1px #0000001a;overflow:hidden;padding:0;transition:all .3s ease}.fac-deliverables-card:hover{border-color:#3b82f6;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;transform:translateY(-4px)}.fac-deliverables-card-header{align-items:flex-start;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;padding:1.5rem}.fac-deliverables-card-title{color:#1e293b;font-size:1.25rem;font-weight:700;line-height:1.3;margin:0 0 .5rem}.fac-deliverables-phase-indicator{background:linear-gradient(135deg,#3b82f6,#1d4ed8);border-radius:8px;color:#fff;font-size:.75rem;font-weight:600;letter-spacing:.025em;padding:.25rem .75rem}.fac-deliverables-card-actions{display:flex;gap:.5rem}.fac-deliverables-action-view{background:linear-gradient(135deg,#10b981,#059669);border:none;border-radius:10px;box-shadow:0 4px 6px -1px #10b98166;color:#fff;cursor:pointer;padding:.75rem;transition:all .2s ease}.fac-deliverables-action-view:hover{box-shadow:0 6px 8px -1px #10b98166;transform:translateY(-1px)}.fac-deliverables-card-body{padding:1.5rem}.fac-deliverables-info-row{margin-bottom:1rem}.fac-deliverables-info-item{align-items:center;display:flex;gap:.75rem;margin-bottom:.75rem}.fac-deliverables-info-icon{color:#3b82f6;font-size:1rem;width:16px}.fac-deliverables-deadline,.fac-deliverables-info-text{color:#374151;font-weight:500}.fac-deliverables-deadline.fac-deliverables-overdue{color:#ef4444;font-weight:600}.fac-deliverables-overdue-badge{background:#ef4444;border-radius:4px;color:#fff;font-size:.7rem;font-weight:600;margin-left:.5rem;padding:.1rem .5rem}.fac-deliverables-stats-section{background:#f8fafc;border-radius:10px;display:flex;gap:1.5rem;margin-bottom:1rem;padding:1rem}.fac-deliverables-stat-item{align-items:center;display:flex;flex-direction:column;text-align:center}.fac-deliverables-stat-label{color:#64748b;font-size:.75rem;font-weight:500;letter-spacing:.05em;margin-bottom:.25rem;text-transform:uppercase}.fac-deliverables-stat-value{color:#1e293b;font-size:1.25rem;font-weight:700}.fac-deliverables-stat-value.fac-deliverables-stat-pending{color:#f59e0b}.fac-deliverables-description-section{margin-bottom:1rem}.fac-deliverables-description-text{color:#64748b;font-size:.95rem;line-height:1.5;margin:0}.fac-deliverables-details-section{border-top:1px solid #e2e8f0;padding-top:1rem}.fac-deliverables-detail-row{align-items:center;display:flex;justify-content:space-between;margin-bottom:.5rem}.fac-deliverables-detail-row:last-child{margin-bottom:0}.fac-deliverables-detail-label{color:#64748b;font-size:.875rem;font-weight:500}.fac-deliverables-detail-value{color:#374151;font-size:.875rem;font-weight:600}.fac-deliverables-modal-overlay{align-items:center;animation:fadeIn .2s ease-out;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0009;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.fac-deliverables-modal-container{animation:slideIn .3s ease-out;background:#fff;border-radius:20px;box-shadow:0 25px 50px -12px #00000040;max-height:90vh;max-width:700px;overflow-y:auto;width:90%}.fac-deliverables-modal-header{align-items:flex-start;background:#fff;border-bottom:1px solid #e2e8f0;border-radius:20px 20px 0 0;color:#1e293b;display:flex;justify-content:space-between;padding:2rem}.fac-deliverables-modal-title{font-size:1.5rem;font-weight:700;margin:0}.fac-deliverables-modal-subtitle{color:#64748b;font-size:.95rem;margin:.5rem 0 0}.fac-deliverables-modal-close{background:#f3f4f6;border:1px solid #d1d5db;border-radius:10px;color:#374151;cursor:pointer;padding:.75rem;transition:all .2s ease}.fac-deliverables-modal-close:hover{background:#e5e7eb}.fac-deliverables-create-form,.fac-deliverables-review-form{padding:2rem}.fac-deliverables-form-section{gap:1.5rem}.fac-deliverables-form-group,.fac-deliverables-form-section{display:flex;flex-direction:column}.fac-deliverables-form-label{color:#374151;font-size:.95rem;font-weight:600;margin-bottom:.5rem}.fac-deliverables-required{color:#ef4444;margin-left:.25rem}.fac-deliverables-form-input,.fac-deliverables-form-select,.fac-deliverables-form-textarea{border:2px solid #e2e8f0;border-radius:10px;font-family:inherit;font-size:1rem;padding:.75rem 1rem;transition:all .2s ease}.fac-deliverables-form-input:focus,.fac-deliverables-form-select:focus,.fac-deliverables-form-textarea:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.fac-deliverables-form-textarea{line-height:1.5;min-height:100px;resize:vertical}.fac-deliverables-form-row{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:1fr 1fr}.fac-deliverables-file-types-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(80px,1fr));margin-top:.5rem}.fac-deliverables-checkbox-label{align-items:center;border:1px solid #e2e8f0;border-radius:8px;cursor:pointer;display:flex;gap:.5rem;padding:.5rem .75rem;transition:all .2s ease}.fac-deliverables-checkbox-label:hover{background:#f8fafc;border-color:#3b82f6}.fac-deliverables-checkbox{margin:0}.fac-deliverables-checkbox-text{color:#374151;font-size:.875rem;font-weight:500}.fac-deliverables-form-actions{border-top:1px solid #e2e8f0;display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem;padding-top:1.5rem}.fac-deliverables-btn-cancel{background:#f3f4f6;border:1px solid #d1d5db;border-radius:10px;color:#374151;cursor:pointer;font-weight:500;padding:.75rem 1.5rem;transition:all .2s ease}.fac-deliverables-btn-cancel:hover{background:#e5e7eb;border-color:#9ca3af}.fac-deliverables-btn-create,.fac-deliverables-btn-submit{align-items:center;background:linear-gradient(135deg,#10b981,#059669);border:none;border-radius:10px;box-shadow:0 4px 6px -1px #10b98166;color:#fff;cursor:pointer;display:flex;font-weight:600;gap:.5rem;padding:.75rem 1.5rem;transition:all .2s ease}.fac-deliverables-btn-create:hover,.fac-deliverables-btn-submit:hover{box-shadow:0 6px 8px -1px #10b98166;transform:translateY(-1px)}.fac-deliverables-btn-icon{font-size:.875rem}.fac-deliverables-submissions-header{align-items:center;background:#fff;border-radius:16px;box-shadow:0 4px 6px -1px #0000001a;display:flex;gap:1.5rem;margin-bottom:1.5rem;padding:1.5rem 2rem}.fac-deliverables-back-button{align-items:center;background:#f3f4f6;border:1px solid #d1d5db;border-radius:10px;color:#374151;cursor:pointer;display:flex;font-weight:500;gap:.5rem;padding:.75rem 1rem;transition:all .2s ease}.fac-deliverables-back-button:hover{background:#e5e7eb;transform:translateX(-2px)}.fac-deliverables-back-icon{font-size:.875rem}.fac-deliverables-deliverable-name{color:#1e293b;font-size:1.25rem;font-weight:700;margin:0}.fac-deliverables-deliverable-meta{display:flex;gap:1rem;margin-top:.5rem}.fac-deliverables-phase-info,.fac-deliverables-team-info{color:#64748b;font-size:.875rem;font-weight:500}.fac-deliverables-submissions-list{display:flex;flex-direction:column;gap:1rem}.fac-deliverables-submission-card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 6px -1px #0000001a;padding:1.5rem;transition:all .2s ease}.fac-deliverables-submission-card:hover{border-color:#3b82f6;box-shadow:0 10px 15px -3px #0000001a;transform:translateY(-2px)}.fac-deliverables-submission-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:1rem}.fac-deliverables-file-section{align-items:flex-start;display:flex;gap:1rem}.fac-deliverables-file-icon-container{background:linear-gradient(135deg,#f1f5f9,#e2e8f0);border-radius:12px;padding:.75rem}.fac-deliverables-file-icon{color:#3b82f6;font-size:1.25rem}.fac-deliverables-file-name{color:#1e293b;font-size:1rem;font-weight:600;margin:0 0 .25rem}.fac-deliverables-file-meta{align-items:center;color:#64748b;display:flex;font-size:.875rem;gap:.5rem}.fac-deliverables-submission-actions{display:flex;gap:.5rem}.fac-deliverables-action-download,.fac-deliverables-action-review{align-items:center;border:none;border-radius:10px;cursor:pointer;display:flex;height:40px;justify-content:center;text-decoration:none;transition:all .2s ease;width:40px}.fac-deliverables-action-download{background:linear-gradient(135deg,#3b82f6,#1d4ed8);box-shadow:0 4px 6px -1px #3b82f666;color:#fff}.fac-deliverables-action-download:hover{box-shadow:0 6px 8px -1px #3b82f666;transform:translateY(-1px)}.fac-deliverables-action-review{background:linear-gradient(135deg,#10b981,#059669);box-shadow:0 4px 6px -1px #10b98166;color:#fff}.fac-deliverables-action-review:hover{box-shadow:0 6px 8px -1px #10b98166;transform:translateY(-1px)}.fac-deliverables-submission-status-section{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.fac-deliverables-status-badge{border-radius:8px;color:#fff;font-size:.75rem;font-weight:600;letter-spacing:.05em;padding:.5rem 1rem;text-transform:uppercase}.fac-deliverables-marks-section{align-items:center;background:#fef3c7;border-radius:8px;color:#92400e;display:flex;gap:.5rem;padding:.5rem 1rem}.fac-deliverables-marks-icon{font-size:.875rem}.fac-deliverables-marks-text{font-size:.875rem;font-weight:600}.fac-deliverables-feedback-section{background:#f8fafc;border-radius:12px;margin-bottom:1rem;padding:1rem}.fac-deliverables-feedback-header{align-items:center;display:flex;gap:.5rem;margin-bottom:.75rem}.fac-deliverables-feedback-icon{color:#3b82f6;font-size:.875rem}.fac-deliverables-feedback-title{color:#374151;font-size:.875rem;font-weight:600}.fac-deliverables-feedback-content{color:#4b5563;font-size:.95rem;line-height:1.5}.fac-deliverables-review-timestamp{color:#64748b;font-size:.8rem;text-align:right}.fac-deliverables-submission-preview{align-items:center;background:#f8fafc;border-radius:12px;display:flex;justify-content:space-between;margin:1.5rem;padding:1.5rem}.fac-deliverables-file-preview{align-items:center;display:flex;gap:1rem}.fac-deliverables-file-preview-icon{background:#fff;border-radius:12px;box-shadow:0 2px 4px #0000001a;padding:1rem}.fac-deliverables-file-preview-icon svg{color:#3b82f6;font-size:1.5rem}.fac-deliverables-file-preview-name{color:#1e293b;font-size:1.1rem;font-weight:600;margin:0 0 .25rem}.fac-deliverables-file-preview-date,.fac-deliverables-file-preview-meta{color:#64748b;font-size:.875rem;margin:0}.fac-deliverables-download-link{align-items:center;background:linear-gradient(135deg,#3b82f6,#1d4ed8);border-radius:10px;box-shadow:0 4px 6px -1px #3b82f666;color:#fff;display:flex;font-weight:500;gap:.5rem;padding:.75rem 1rem;text-decoration:none;transition:all .2s ease}.fac-deliverables-download-link:hover{box-shadow:0 6px 8px -1px #3b82f666;transform:translateY(-1px)}.fac-deliverables-download-icon{font-size:.875rem}.fac-deliverables-options-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.fac-deliverables-option-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;cursor:pointer;padding:1.5rem;transition:all .2s ease}.fac-deliverables-option-card:hover{border-color:#3b82f6;box-shadow:0 10px 15px -3px #0000001a;transform:translateY(-2px)}.fac-deliverables-option-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:1rem}.fac-deliverables-option-title{color:#1e293b;font-size:1.1rem;font-weight:600;margin:0}.fac-deliverables-option-phase{background:linear-gradient(135deg,#3b82f6,#1d4ed8);border-radius:6px;color:#fff;font-size:.75rem;font-weight:600;padding:.25rem .5rem}.fac-deliverables-option-info{display:flex;flex-direction:column;gap:.5rem}.fac-deliverables-option-team{color:#374151;font-weight:500}.fac-deliverables-option-submissions{color:#64748b;font-size:.875rem}.fac-deliverables-option-pending{color:#f59e0b;font-weight:600;margin-left:.25rem}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes slideInRight{0%{opacity:0;transform:translateX(100%)}to{opacity:1;transform:translateX(0)}}@media (max-width:768px){.fac-deliverables-main-container{padding:1rem}.fac-deliverables-page-header{padding:1.5rem}.fac-deliverables-title-section{align-items:flex-start;flex-direction:column;gap:1rem;margin-bottom:1.5rem}.fac-deliverables-main-title{font-size:2rem}.fac-deliverables-tab-navigation{flex-direction:column;gap:.5rem}.fac-deliverables-tab-button{padding:.75rem 1rem}.fac-deliverables-section-header{align-items:flex-start;flex-direction:column;gap:1rem}.fac-deliverables-form-row,.fac-deliverables-grid-container{grid-template-columns:1fr}.fac-deliverables-modal-container{margin:1rem;width:95%}.fac-deliverables-create-form,.fac-deliverables-modal-header,.fac-deliverables-review-form{padding:1.5rem}.fac-deliverables-submissions-header{align-items:flex-start;flex-direction:column;gap:1rem}.fac-deliverables-submission-header{flex-direction:column;gap:1rem}.fac-deliverables-submission-status-section{align-items:flex-start;flex-direction:column;gap:.5rem}.fac-deliverables-file-types-grid{grid-template-columns:repeat(2,1fr)}.fac-deliverables-options-grid{grid-template-columns:1fr}}@media (max-width:480px){.fac-deliverables-main-title{font-size:1.75rem}.fac-deliverables-tab-button{font-size:.875rem}.fac-deliverables-form-actions{flex-direction:column}.fac-deliverables-submission-preview{flex-direction:column;gap:1rem}}body,html{font-family:sans-serif;height:100%;margin:0;padding:0}#root{height:100%;width:100%}.loading-screen{background:#f5f5f5;font-size:1.5rem}.loading-screen,.reset-container{align-items:center;display:flex;height:100vh;justify-content:center}.reset-container{background-color:#f4f4f4}.reset-card{background:#fff;border-radius:10px;box-shadow:0 4px 15px #0000001a;max-width:400px;padding:2rem;width:100%}.reset-input{margin:10px 0}.reset-button,.reset-input{font-size:1rem;padding:10px;width:100%}.reset-button{background-color:#007bff;border:none;color:#fff;cursor:pointer}.reset-message{color:red;margin-bottom:10px}.video-call-page{background:#000;bottom:0;display:flex;flex-direction:column;left:0;position:fixed;right:0;top:0;z-index:9999}.call-header{align-items:center;background:#000c;border-bottom:1px solid #ffffff1a;color:#fff;display:flex;justify-content:space-between;padding:1rem 2rem}.call-info h2{font-size:1.5rem;font-weight:600;margin:0 0 .5rem}.call-status{gap:2rem}.call-status,.status-indicator{align-items:center;display:flex}.status-indicator{font-size:.875rem;gap:.5rem}.call-icon.active{animation:pulse 2s infinite;color:#10b981}@keyframes pulse{0%{opacity:1}50%{opacity:.5}to{opacity:1}}.participants-count{align-items:center;display:flex;font-size:.875rem;gap:.5rem}.call-actions{display:flex;gap:1rem}.end-call-btn{align-items:center;background:#ef4444;border:none;border-radius:.5rem;color:#fff;cursor:pointer;display:flex;font-size:.875rem;font-weight:600;gap:.75rem;padding:.75rem 1.5rem;transition:all .2s ease}.end-call-btn:hover{background:#dc2626;transform:translateY(-1px)}.jitsi-container{background:#1f2937;flex:1 1;position:relative}.jitsi-meet-wrapper{height:100%;width:100%}.call-loading{align-items:center;background:#000000e6;bottom:0;display:flex;justify-content:center;left:0;position:absolute;right:0;top:0;z-index:10}.loading-content{color:#fff;text-align:center}.loading-spinner{animation:spin 1s linear infinite;border:4px solid #ffffff4d;border-radius:50%;border-top-color:#3b82f6;height:60px;margin:0 auto 1.5rem;width:60px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.loading-content h3{font-size:1.25rem;margin:0 0 .5rem}.loading-content p{font-size:.875rem;margin:0;opacity:.8}.call-error-page{align-items:center;background:#1f2937;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:9999}.error-content{color:#fff;max-width:400px;padding:2rem;text-align:center}.error-icon{color:#ef4444;font-size:4rem;margin-bottom:1.5rem}.error-content h2{font-size:1.5rem;margin:0 0 1rem}.error-content p{line-height:1.5;margin:0 0 2rem;opacity:.8}.back-btn{align-items:center;background:#3b82f6;border:none;border-radius:.5rem;color:#fff;cursor:pointer;display:inline-flex;font-weight:500;gap:.5rem;padding:.75rem 1.5rem;text-decoration:none;transition:background .2s ease}.back-btn:hover{background:#2563eb}@media (max-width:768px){.call-header{flex-direction:column;gap:1rem;padding:1rem}.call-status{gap:1rem}.call-info h2{font-size:1.25rem}}.loading-steps{display:flex;gap:2rem;justify-content:center;margin:2rem 0}.step{align-items:center;border-radius:.5rem;display:flex;flex-direction:column;gap:.5rem;min-width:120px;padding:1rem;transition:all .3s ease}.step.active{background:#3b82f633;color:#3b82f6}.step.completed{background:#10b98133;color:#10b981}.step svg{font-size:1.5rem}.loading-tip{font-size:.875rem;margin-top:1rem;opacity:.8;text-align:center}.loading-dots{animation:spin 1s ease-in-out infinite;border:2px solid #ffffff4d;border-radius:50%;border-top-color:#10b981;display:inline-block;height:20px;width:20px}.error-actions{display:flex;gap:1rem;justify-content:center;margin-top:2rem}.retry-btn{align-items:center;background:#10b981;border:none;border-radius:.5rem;color:#fff;cursor:pointer;display:inline-flex;font-weight:500;gap:.5rem;padding:.75rem 1.5rem;transition:background .2s ease}.retry-btn:hover{background:#059669}@media (max-width:768px){.loading-steps{gap:1rem}.error-actions,.loading-steps{flex-direction:column}.back-btn,.retry-btn{width:100%}}.video-container{background:#1f2937;flex:1 1;padding:1rem}.video-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));height:100%;max-height:calc(100vh - 120px)}.video-item{background:#374151;border-radius:.75rem;box-shadow:0 4px 6px #0000001a;overflow:hidden;position:relative}.video-player{background:#374151;height:100%;min-height:200px;width:100%}.video-label{align-items:center;background:linear-gradient(#0000,#000c);bottom:0;color:#fff;display:flex;font-size:.875rem;font-weight:500;justify-content:space-between;left:0;padding:1rem .75rem .75rem;position:absolute;right:0}.local-video{border:2px solid #3b82f6}.remote-video{border:2px solid #374151}.empty-slot{align-items:center;background:#6b72801a;border:2px dashed #6b7280;display:flex;justify-content:center}.empty-content{color:#9ca3af;text-align:center}.empty-content svg{font-size:2rem;margin-bottom:.5rem}.control-btn{align-items:center;background:#ffffff1a;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;height:48px;justify-content:center;transition:all .2s ease;width:48px}.control-btn:hover{background:#fff3;transform:scale(1.05)}.control-btn.muted{background:#ef4444}.control-btn.muted:hover{background:#dc2626}.mute-indicator{color:#ef4444;font-size:.75rem;margin-left:.5rem}.loading-overlay{align-items:center;background:#1f2937f2;bottom:0;display:flex;justify-content:center;left:0;position:absolute;right:0;top:0}.video-grid:has(.video-item:only-child){grid-template-columns:1fr}.video-grid:has(.video-item:nth-child(2):last-child){grid-template-columns:1fr 1fr}@media (max-width:768px){.video-grid{gap:.5rem;grid-template-columns:1fr}.call-header{flex-direction:column;gap:1rem}.call-actions{gap:.5rem}.control-btn{height:40px;width:40px}}
/*# sourceMappingURL=main.6c3b32a6.css.map*/