body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#0b0f19;color:#f9fafb;font-family:Plus Jakarta Sans,Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}:root{--primary:#6366f1;--primary-glow:#6366f166;--bg-dark:#0f172a;--glass-bg:#ffffff0d;--glass-border:#ffffff1a;--text-main:#f8fafc;--text-dark:#1f2937;--text-muted:#94a3b8;--error:#fb7185;--success:#34d399;--radius:16px}.login-container{align-items:center;background-color:#0f172a;background-color:var(--bg-dark);background-image:radial-gradient(circle at 10% 20%,#6366f126 0,#0000 40%),radial-gradient(circle at 90% 80%,#a855f726 0,#0000 40%);display:flex;font-family:Plus Jakarta Sans,sans-serif;justify-content:center;min-height:100vh;overflow:hidden;padding:20px;position:relative}.login-container:before{background:#6366f1;background:var(--primary);content:"";filter:blur(120px);height:300px;left:30%;opacity:.2;position:absolute;top:20%;width:300px;z-index:0}.login-box{animation:slideUp .6s cubic-bezier(.16,1,.3,1);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background:#ffffff0d;background:var(--glass-bg);border:1px solid #ffffff1a;border:1px solid var(--glass-border);border-radius:16px;border-radius:var(--radius);box-shadow:0 25px 50px -12px #00000080;max-width:650px;padding:40px;width:100%;z-index:1}.login-header .logo{margin-bottom:30px;text-align:center}.logo h1{color:#f8fafc;color:var(--text-main);font-size:2.2rem;font-weight:800;letter-spacing:-1px;margin-top:10px}.logo p{color:#94a3b8;color:var(--text-muted);font-size:.95rem}.toggle-buttons{background:#0003;border:1px solid #ffffff1a;border:1px solid var(--glass-border);border-radius:12px;display:flex;margin-bottom:30px;padding:4px}.toggle-buttons button{background:#0000;border:none;border-radius:8px;color:#94a3b8;color:var(--text-muted);cursor:pointer;flex:1 1;font-weight:600;padding:12px;transition:all .2s ease}.toggle-buttons button.active{background:#6366f1;background:var(--primary);box-shadow:0 4px 12px #6366f166;box-shadow:0 4px 12px var(--primary-glow);color:#fff}.form-group{margin-bottom:22px}.form-group label{align-items:center;color:#f8fafc;color:var(--text-main);display:flex;font-weight:500;gap:10px}.form-group input,.form-group select{background:#0003;border:1px solid #ffffff1a;border:1px solid var(--glass-border);border-radius:10px;box-sizing:border-box;color:#fff;font-size:1rem;padding:14px 16px;transition:all .3s ease;width:100%}.form-group input:focus,.form-group select:focus{background:#0000004d;border-color:#6366f1;border-color:var(--primary);box-shadow:0 0 0 4px #6366f166;box-shadow:0 0 0 4px var(--primary-glow);outline:none}.btn-primary{background:#6366f1;background:var(--primary);border:none;border-radius:10px;box-shadow:0 10px 15px -3px #6366f166;box-shadow:0 10px 15px -3px var(--primary-glow);color:#fff;cursor:pointer;font-size:1.1rem;font-weight:700;margin-top:10px;padding:16px;transition:all .3s ease;width:100%}.btn-primary:hover{box-shadow:0 15px 25px -5px #6366f166;box-shadow:0 15px 25px -5px var(--primary-glow);filter:brightness(1.1);transform:translateY(-2px)}.btn-success{align-items:center;background:#34d399;background:var(--success);border:none;border-radius:8px;box-shadow:0 4px 12px #34d3994d;color:#fff;cursor:pointer;display:inline-flex;font-weight:600;gap:8px;padding:10px 20px;transition:all .3s ease}.btn-success:hover{box-shadow:0 6px 16px #34d39966;filter:brightness(1.1);transform:translateY(-2px)}.alert{border-radius:10px;font-size:.9rem;padding:14px}.alert-error{background:#fb71851a;border-color:#fb718533;color:var(--error)}.alert-success{background:#34d3991a;border-color:#34d39933;color:var(--success)}.switch-form{color:#94a3b8;color:var(--text-muted);font-size:.9rem;margin-top:25px;text-align:center}.link-btn{background:none;border:none;color:#6366f1;color:var(--primary);cursor:pointer;font-weight:700;margin-left:5px;transition:opacity .2s}.link-btn:hover{opacity:.8;text-decoration:underline}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.spinner{border:3px solid #ffffff4d;border-top-color:#fff;display:inline-block;height:20px;width:20px}.dashboard-container{background-color:#0f172a;background-color:var(--bg-dark);background-image:radial-gradient(circle at 0 0,#6366f11a 0,#0000 35%),radial-gradient(circle at 100% 100%,#a855f71a 0,#0000 35%);color:#f8fafc;color:var(--text-main);display:flex;min-height:100vh}.main-content{flex:1 1;overflow-y:auto;padding:40px}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.stat-card .stat-icon{align-items:center;border-radius:12px;display:flex;font-size:1.5rem;height:50px;justify-content:center;width:50px}.stat-info h3{font-weight:700}.stat-info p{color:var(--text-muted);font-size:.9rem}.section{margin-top:50px}.section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:25px}.btn-secondary{background:#ffffff0d;border:1px solid #ffffff1a;border:1px solid var(--glass-border);border-radius:8px;color:#f8fafc;color:var(--text-main);cursor:pointer;font-weight:600;padding:8px 18px;transition:var(--transition)}.btn-secondary:hover{background:#6366f1;background:var(--primary);border-color:#6366f1;border-color:var(--primary)}.notes-grid{grid-gap:25px;gap:25px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.note-card{background:#ffffff0d;background:var(--glass-bg);border:1px solid #ffffff1a;border:1px solid var(--glass-border);border-radius:16px;border-radius:var(--radius);padding:20px;transition:var(--transition)}.note-card:hover{border-color:#ffffff4d;box-shadow:0 10px 30px #0000004d}.empty-state,.loading{background:#ffffff0d;background:var(--glass-bg);border:1px dashed #ffffff1a;border:1px dashed var(--glass-border);border-radius:16px;border-radius:var(--radius);color:#94a3b8;color:var(--text-muted);padding:60px;text-align:center}.nav-links{gap:8px}.nav-item{font-weight:500;gap:12px;padding:12px 16px;transition:all .2s ease}.nav-item:hover{background:#ffffff08}.nav-item.active{box-shadow:0 4px 15px #6366f14d}.header-container{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:40px}.header-text h1{color:#fff;font-size:2rem;font-weight:800;margin-bottom:8px}.header-text p{color:#94a3b8;font-size:1rem}.stats-grid{grid-gap:24px;gap:24px;grid-template-columns:repeat(3,1fr);margin-bottom:48px}.stat-card{align-items:center;background:linear-gradient(135deg,#ffffff0d,#ffffff03);border:1px solid #ffffff14;border-radius:20px;display:flex;gap:24px;overflow:hidden;padding:30px;position:relative;transition:transform .3s ease,border-color .3s ease}.stat-card:hover{border-color:#6366f166;transform:translateY(-5px)}.icon-container{align-items:center;border-radius:16px;display:flex;font-size:1.5rem;height:60px;justify-content:center;width:60px}.stats-content .value{color:#fff;display:block;font-size:2rem;font-weight:800;line-height:1}.stats-content .label{color:#94a3b8;font-size:.75rem;font-weight:700;letter-spacing:1px;margin-top:4px;text-transform:uppercase}.empty-state{color:#64748b;padding:80px 40px}.filter-bar{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff08;border:1px solid #ffffff14;border-radius:16px;display:flex;flex-wrap:wrap;gap:16px;margin-bottom:30px;padding:16px}.search-box{flex:1 1;min-width:280px;position:relative}.search-icon{color:#94a3b8;font-size:1.1rem;left:14px;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%)}.search-box input{background:#0f172a99;border:1px solid #ffffff1a;border-radius:12px;color:#fff;font-size:.95rem;padding:12px 12px 12px 45px;transition:all .3s ease;width:100%}.search-box input:focus{background:#0f172acc;border-color:#6366f1;border-color:var(--primary);box-shadow:0 0 0 4px #6366f126;outline:none}.filter-group{min-width:150px}.form-control{-webkit-appearance:none;appearance:none;background:#ffffff0d;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%2394a3b8'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m19 9-7 7-7-7'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;background-size:16px;border:1px solid #ffffff1a;border-radius:10px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:500;padding:10px 16px;transition:all .2s ease;width:100%}.form-control:hover{background-color:#ffffff14;border-color:#fff3}.form-control:focus{border-color:#6366f1;border-color:var(--primary);outline:none}.form-control option{background:#1e293b;color:#fff}.filter-bar .btn-secondary{align-items:center;background:#ef44441a;border:1px solid #ef444433;border-radius:10px;color:#f87171;cursor:pointer;display:flex;font-size:.9rem;font-weight:600;gap:8px;padding:10px 20px;transition:all .2s ease}.filter-bar .btn-secondary:hover{background:#ef4444;border-color:#ef4444;color:#fff;transform:translateY(-1px)}@media (max-width:768px){.filter-bar{align-items:stretch;flex-direction:column}.filter-group{width:100%}}.header{align-items:center;display:flex;justify-content:space-between;margin-bottom:30px;padding:20px 0;position:-webkit-sticky;position:sticky;top:0;z-index:100}.header-left h1{color:#fff;font-size:2.2rem;font-weight:800;letter-spacing:-1px;margin:0}.header-left .subtitle{color:#94a3b8;color:var(--text-muted);font-size:1rem;margin-top:4px;opacity:.8}.header-right{align-items:center;display:flex;gap:24px}.header-right .search-box{position:relative;width:250px}.header-right .search-icon{color:#94a3b8;color:var(--text-muted);left:12px;position:absolute;top:50%;transform:translateY(-50%)}.header-right .search-input{background:#ffffff0d;border:1px solid #ffffff1a;border:1px solid var(--glass-border);border-radius:10px;color:#fff;font-size:.9rem;padding:8px 12px 8px 38px;transition:all .3s ease;width:auto}.header-right .search-input:focus{background:#ffffff1a;border-color:#6366f1;border-color:var(--primary);outline:none}.user-info{align-items:center;border-left:1px solid #ffffff1a;border-left:1px solid var(--glass-border);display:flex;gap:15px;padding-left:20px}.notification-btn,.theme-btn{align-items:center;background:#ffffff0d;border:1px solid #ffffff1a;border:1px solid var(--glass-border);border-radius:10px;color:#fff;cursor:pointer;display:flex;font-size:1.1rem;height:40px;justify-content:center;transition:all .2s ease;width:40px}.notification-btn:hover,.theme-btn:hover{background:#6366f1;background:var(--primary);border-color:#6366f1;border-color:var(--primary);transform:translateY(-2px)}.user-avatar{align-items:center;background:linear-gradient(135deg,#6366f1,#a855f7);background:linear-gradient(135deg,var(--primary),#a855f7);border-radius:12px;box-shadow:0 4px 12px #6366f14d;color:#fff;display:flex;font-size:1.1rem;font-weight:700;height:42px;justify-content:center;width:42px}.user-details{display:flex;flex-direction:column}.user-name{color:#fff;font-size:.95rem;font-weight:700}.user-role{color:#94a3b8;color:var(--text-muted);font-size:.75rem;text-transform:capitalize}@media (max-width:1024px){.header-right .search-box{display:none}}.note-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff08;border:1px solid #ffffff14;border-radius:20px;display:flex;flex-direction:column;gap:20px;overflow:hidden;padding:24px;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}.note-card:hover{background:#ffffff0f;border-color:#6366f1;border-color:var(--primary);box-shadow:0 20px 40px #0006;transform:translateY(-8px)}.note-header{display:flex;flex-direction:column;gap:8px}.note-type{align-self:flex-start;border-radius:20px;font-size:.7rem;font-weight:800;letter-spacing:.5px;padding:4px 12px;text-transform:uppercase}.note-type.note{background:#6366f126;color:#818cf8}.note-type.pastpaper{background:#a855f726;color:#c084fc}.note-header h3{-webkit-line-clamp:1;line-clamp:1;color:#fff;font-size:1.25rem;font-weight:700;margin:5px 0 0}.note-header h3,.note-header p{-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.note-header p{-webkit-line-clamp:2;line-clamp:2;color:#94a3b8;font-size:.9rem;line-height:1.5}.note-body{border-bottom:1px solid #ffffff0d;border-top:1px solid #ffffff0d;display:flex;flex-direction:column;gap:12px;padding:15px 0}.note-meta{display:flex;flex-wrap:wrap;gap:12px}.note-meta span{align-items:center;background:#ffffff0a;border-radius:6px;color:#cbd5e1;display:flex;font-size:.8rem;gap:6px;padding:4px 10px}.note-meta span svg{color:#6366f1;color:var(--primary);font-size:.9rem}.note-footer{align-items:center;display:flex;gap:10px;justify-content:space-between;margin-top:auto}.department-badge{background:#0003;border-radius:4px;color:#64748b;font-size:.75rem;font-weight:600;padding:4px 8px;position:relative;top:5px}.btn-sm{align-items:center;border-radius:8px;display:flex;font-size:.85rem;gap:8px;padding:8px 16px}.note-card .btn-primary{background:#6366f1;background:var(--primary);border:none;box-shadow:0 4px 12px #6366f133;color:#fff}.note-card .btn-primary:hover{background:#4f46e5;box-shadow:0 6px 15px #6366f166}.sidebar{-webkit-overflow-scrolling:touch;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background:#0f172ae6;border-right:1px solid #ffffff0d;display:flex;flex-direction:column;height:100vh;overflow-x:auto;overflow-y:auto;padding:30px 20px;position:-webkit-sticky;position:sticky;top:0;transition:all .3s ease;width:260px;z-index:1000}.sidebar .logo{align-items:center;color:#fff;display:flex;gap:12px;margin-bottom:40px;padding:0 15px}.sidebar .logo span{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#fff,#94a3b8);-webkit-background-clip:text;background-clip:text;font-size:1.5rem;font-weight:800;letter-spacing:-.5px}.sidebar .logo svg{color:#6366f1;color:var(--primary);filter:drop-shadow(0 0 8px rgba(99,102,241,.4));filter:drop-shadow(0 0 8px var(--primary-glow))}.nav-links{display:flex;flex:1 1;flex-direction:column;gap:10px}.nav-item{align-items:center;background:#0000;border:1px solid #0000;border-radius:12px;color:#94a3b8;cursor:pointer;display:flex;font-size:.95rem;font-weight:600;gap:15px;padding:12px 18px;text-decoration:none;transition:all .2s cubic-bezier(.4,0,.2,1);width:100%}.nav-item:hover{background:#ffffff0d;color:#fff;transform:translateX(5px)}.nav-item.active{background:#6366f1;background:var(--primary);border:1px solid #ffffff1a;box-shadow:0 10px 20px -5px #6366f166;color:#fff}.nav-item.active .nav-icon{color:#fff}.nav-icon{align-items:center;display:flex;font-size:1.2rem;justify-content:center;transition:color .2s}.sidebar-footer{border-top:1px solid #ffffff0d;display:flex;flex-direction:column;gap:10px;margin-top:auto;padding-top:20px}button.nav-item{text-align:left}button.nav-item:hover{background:#ef44441a;color:#f87171}.stat-icon{align-items:center;border-radius:14px;box-shadow:0 8px 16px -4px currentColor;display:flex;flex-shrink:0;font-size:1.5rem;height:56px;justify-content:center;transition:transform .3s ease;width:56px}.stat-card:hover .stat-icon{transform:scale(1.1) rotate(-5deg)}.stat-info{display:flex;flex-direction:column;gap:2px}.stat-info h3{color:#fff;font-size:1.8rem;font-weight:800;letter-spacing:-.5px;margin:0}.stat-info p{color:#94a3b8;font-size:.85rem;font-weight:600;letter-spacing:1px;margin:0;text-transform:uppercase}@media (max-width:640px){.stat-card{gap:15px;padding:16px}.stat-info h3{font-size:1.5rem}}.modal-overlay{align-items:center;animation:fadeIn .3s ease;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0f172ab3;display:flex;height:100%;justify-content:center;left:0;padding:20px;position:fixed;top:0;width:100%;z-index:2000}.modal-content{animation:modalSlideUp .4s cubic-bezier(.16,1,.3,1);background:#1e293b;border:1px solid #ffffff1a;border-radius:24px;box-shadow:0 25px 50px -12px #00000080;max-height:90vh;max-width:600px;overflow-y:auto;padding:32px;position:relative;width:100%}.modal-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:24px}.modal-header h2{color:#fff;font-size:1.5rem;font-weight:800;margin:0}.close-btn{align-items:center;background:#ffffff0d;border:none;border-radius:10px;color:#94a3b8;cursor:pointer;display:flex;height:36px;justify-content:center;transition:all .2s;width:36px}.close-btn:hover{background:#ef44441a;color:#ef4444}.form-row{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 1fr}.form-group,.form-row{margin-bottom:20px}.form-group label{color:#94a3b8;display:block;font-size:.85rem;font-weight:600;margin-bottom:8px}.form-group input,.form-group select,.form-group textarea{background:#0f172a80;border:1px solid #ffffff1a;border-radius:12px;color:#fff;font-size:.95rem;padding:12px 16px;transition:all .3s ease;width:100%}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{background:#0f172acc;border-color:#6366f1;border-color:var(--primary);box-shadow:0 0 0 4px #6366f126;outline:none}.file-upload-container{margin-top:10px}#file-upload{display:none}.file-upload-label{align-items:center;background:#ffffff05;border:2px dashed #ffffff1a;border-radius:16px;cursor:pointer;display:flex;flex-direction:column;justify-content:center;padding:30px;transition:all .3s ease}.file-upload-label:hover{background:#6366f10d;border-color:#6366f1;border-color:var(--primary)}.file-upload-label p{color:#94a3b8;font-size:.9rem;margin-top:12px}.modal-actions{border-top:1px solid #ffffff0d;display:flex;gap:12px;justify-content:flex-end;margin-top:30px;padding-top:20px}.btn-cancel{background:#0000;border:1px solid #ffffff1a;border-radius:12px;color:#94a3b8;font-weight:600}.btn-cancel,.btn-submit{cursor:pointer;padding:12px 24px}.btn-submit{background:#6366f1;background:var(--primary);border:none;border-radius:12px;box-shadow:0 10px 15px -3px #6366f14d;color:#fff;font-weight:700}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.stats-grid{grid-gap:30px;align-items:start;display:grid;gap:30px;grid-template-columns:1fr 1fr 1fr}.card{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffff08;border:1px solid #ffffff14;border-radius:20px;box-shadow:0 10px 30px #0003;padding:28px}.card h3{align-items:center;color:#fff;display:flex;font-size:1.25rem;font-weight:700;gap:10px;margin-bottom:20px}.form-input{background:#0f172a99;border:1px solid #ffffff1a;border-radius:12px;color:#fff;font-size:.95rem;margin-top:5px;padding:12px 16px;transition:all .3s ease;width:100%}.form-input:focus{background:#0f172acc;border-color:#6366f1;border-color:var(--primary);box-shadow:0 0 0 4px #6366f126;outline:none}.w-100{width:100%}.mt-4{margin-top:24px}ul{list-style:none;margin:0;padding:0}li.border-bottom{border-bottom:1px solid #ffffff0d;border-radius:8px;transition:background .2s ease}li.border-bottom:last-child{border-bottom:none}li.border-bottom:hover{background:#ffffff05}.p-3{padding:16px}.d-flex{display:flex}.justify-between{justify-content:space-between}.align-center{align-items:center}.text-sm{font-size:.8rem}.text-secondary{color:#94a3b8;margin-top:2px}strong{color:#f8fafc;font-size:1rem;font-weight:600}.text-center{text-align:center}.gap-2{gap:8px}.gap-3{gap:12px}.gap-4{gap:16px}.spinner{animation:spin .8s linear infinite;border:3px solid #6366f133;border-radius:50%;border-top:3px solid var(--primary);height:30px;width:30px}@keyframes spin{to{transform:rotate(1turn)}}@media (max-width:992px){.stats-grid{grid-template-columns:1fr}}.main-content .section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:24px;margin-top:40px;padding:0 5px}.section-header h2{color:#fff;font-size:1.5rem;font-weight:700;letter-spacing:-.5px}.section-header .btn-primary{align-items:center;background:#6366f1;background:var(--primary);border:none;border-radius:12px;box-shadow:0 4px 15px #6366f166;box-shadow:0 4px 15px var(--primary-glow);color:#fff;cursor:pointer;display:flex;font-weight:700;gap:8px;padding:10px 20px;transition:all .3s ease}.section-header .btn-primary:hover{box-shadow:0 8px 20px #6366f166;box-shadow:0 8px 20px var(--primary-glow);filter:brightness(1.1);transform:translateY(-2px)}.notes-grid{grid-gap:24px;animation:fadeInUp .5s ease forwards;display:grid;gap:24px;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.empty-state{align-items:center;background:#ffffff05;border:2px dashed #ffffff0d;border-radius:24px;color:#94a3b8;display:flex;flex-direction:column;justify-content:center;padding:100px 40px;text-align:center}.empty-state p{font-size:1.1rem;font-weight:500}.loading{align-items:center;color:#6366f1;color:var(--primary);display:flex;font-size:1.1rem;font-weight:600;justify-content:center;letter-spacing:1px;min-height:300px}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media (max-width:768px){.section-header{align-items:flex-start;flex-direction:column;gap:15px}.section-header .btn-primary{justify-content:center;width:100%}}.profile-container{animation:fadeIn .5s ease-out;display:flex;flex-direction:column;gap:30px}.profile-hero{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(135deg,#6366f11a,#a855f71a);border:1px solid #ffffff1a;border:1px solid var(--glass-border);border-radius:24px;display:flex;gap:30px;padding:40px}.profile-avatar-large{align-items:center;background:linear-gradient(135deg,#6366f1,#a855f7);background:linear-gradient(135deg,var(--primary),#a855f7);border-radius:30px;box-shadow:0 20px 40px #6366f14d;color:#fff;display:flex;font-size:3rem;font-weight:800;height:120px;justify-content:center;width:120px}.profile-info-main h2{color:#fff;font-size:2.5rem;font-weight:800;letter-spacing:-1px;margin:0}.profile-info-main p{color:#94a3b8;color:var(--text-muted);font-size:1.1rem;margin-top:5px}.profile-details-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.info-card{background:#ffffff0d;background:var(--glass-bg);border:1px solid #ffffff1a;border:1px solid var(--glass-border);border-radius:20px;display:flex;flex-direction:column;gap:15px;padding:24px}.info-card h4{color:#6366f1;color:var(--primary);font-size:.9rem;letter-spacing:1.5px;margin:0;text-transform:uppercase}.info-item{align-items:center;border-bottom:1px solid #ffffff0d;display:flex;justify-content:space-between;padding:12px 0}.info-item:last-child{border-bottom:none}.info-label{color:#94a3b8;color:var(--text-muted);font-weight:500}.info-value{color:#fff;font-weight:700}.profile-actions{display:flex;gap:15px;margin-top:10px}.btn-outline{background:#0000;border:1px solid #ffffff1a;border:1px solid var(--glass-border);border-radius:12px;color:#fff;cursor:pointer;font-weight:600;padding:12px 24px;transition:all .3s ease}.btn-outline:hover{background:#ffffff0d;border-color:#fff}@media (max-width:768px){.profile-hero{flex-direction:column;padding:30px;text-align:center}}.profile-container{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));margin-bottom:24px}.card-header-flex{align-items:center;display:flex;justify-content:space-between;margin-bottom:25px}.profile-value{background:#ffffff08;border:1px solid #ffffff0d;border-radius:10px;color:#fff;font-weight:500;margin-top:5px;padding:12px 16px}.role-badge{border-radius:20px;display:inline-block;font-size:.8rem;font-weight:700;letter-spacing:.5px;padding:4px 12px;text-transform:uppercase}.role-student{background:#38bdf826;color:#38bdf8}.role-teacher{background:#a855f726;color:#c084fc}.role-admin{background:#f43f5e26;color:#fb7185}.stats-grid-small{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(3,1fr);margin-top:20px}.stat-item{background:#0f172a66;border:1px solid #ffffff08;border-radius:16px;padding:20px;text-align:center}.stat-value{color:#6366f1;color:var(--primary);font-size:1.5rem;font-weight:800}.stat-label{color:#94a3b8;font-size:.75rem;margin-top:5px;text-transform:uppercase}.table-container{margin-top:15px;overflow-x:auto}.table{border-collapse:initial;border-spacing:0 8px;width:100%}.table th{color:#64748b;font-size:.85rem;font-weight:600;padding:12px 16px;text-align:left;text-transform:uppercase}.table tr{background:#ffffff05;transition:transform .2s}.table tr:hover{background:#ffffff0a}.table td{border-bottom:1px solid #ffffff08;border-top:1px solid #ffffff08;color:#f8fafc;padding:16px}.table td:first-child{border-left:1px solid #ffffff08;border-radius:12px 0 0 12px}.table td:last-child{border-radius:0 12px 12px 0;border-right:1px solid #ffffff08}.table-subtext{color:#64748b;font-size:.75rem;margin-top:4px}.table-description{color:#94a3b8;font-size:.8rem;font-style:italic}.account-actions{border-top:1px solid #ffffff0d;display:flex;flex-direction:column;gap:12px;margin-top:30px;padding-top:20px}.btn-danger{background:#ef44441a;border:1px solid #ef444433;border-radius:10px;color:#f87171;cursor:pointer;font-weight:600;padding:12px;transition:all .2s}.btn-danger:hover{background:#ef4444;color:#fff}.status-badge{border-radius:6px;font-size:.75rem;font-weight:600;padding:4px 10px}.status-pending{background:#f59e0b1a;color:#f59e0b}.status-approved{background:#10b9811a;color:#10b981}.status-rejected{background:#ef44441a;color:#ef4444}.view-file-btn{align-items:center;background:#6366f1;background:var(--primary);border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:.8rem;gap:5px;padding:6px 12px}.teacher-feedback{background:#f59e0b0d;border-left:4px solid #f59e0b;border-radius:4px;color:#94a3b8;color:var(--text-muted);margin-top:20px;overflow:hidden;padding:16px 20px;position:relative}.teacher-feedback strong{color:#fbbf24;display:block;font-size:.95rem;letter-spacing:.5px;margin-bottom:8px;text-transform:uppercase}.teacher-feedback:before{background:linear-gradient(90deg,#f59e0b1a,#0000);bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0}.tabs{display:flex;gap:12px;margin:1rem 0}.tab-btn{align-items:center;background:#0000;border:1px solid #6366f1;border:1px solid var(--primary);border-radius:6px;color:#fff;cursor:pointer;display:inline-flex;font-size:.9rem;gap:6px;padding:8px 16px;transition:background .2s,color .2s}.tab-btn.active,.tab-btn:hover{background:#6366f1;background:var(--primary);color:#fff}.tab-btn .badge{font-size:.75rem;margin-left:6px;padding:2px 6px}.reject-form .input{border:1px solid var(--secondary);border-radius:4px;font-size:.9rem;padding:6px 10px}.reject-form .btn{font-size:.85rem;padding:6px 12px}.alert{border:1px solid #0000;border-radius:12px;font-weight:500;margin-bottom:20px;padding:16px}.alert-success{background:#10b9811a;border-color:#10b98133;color:#34d399}.alert-error{background:#f43f5e1a;border-color:#f43f5e33;color:#fb7185}.request-card{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#ffffff0d;background:var(--glass-bg);border:1px solid #ffffff1a;border:1px solid var(--glass-border);border-radius:16px;color:#f8fafc;color:var(--text-main);margin-bottom:24px;padding:24px;transition:transform .2s ease,box-shadow .2s ease}.request-card:hover{border-color:#fff3;box-shadow:0 10px 30px -10px #00000080;transform:translateY(-2px)}.request-header{align-items:flex-start;display:flex;gap:16px;justify-content:space-between;margin-bottom:16px}.request-header h3{color:#fff;font-size:1.25rem;font-weight:700;line-height:1.4;margin:0}.request-description{background:#0003;border:1px solid #ffffff1a;border:1px solid var(--glass-border);border-radius:8px;color:#94a3b8;color:var(--text-muted);font-size:1rem;line-height:1.6;margin:16px 0;padding:16px}.request-details{grid-gap:12px;border-bottom:1px solid #ffffff1a;border-bottom:1px solid var(--glass-border);display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:20px;padding-bottom:20px}.request-details .detail-item{align-items:center;color:#94a3b8;color:var(--text-muted);display:flex;font-size:.9rem;gap:8px}.request-details .detail-item strong{color:#f8fafc;color:var(--text-main)}.request-actions{align-items:center;display:flex;flex-wrap:wrap;gap:12px;margin-top:16px}.requests-list{margin-left:0;max-width:800px}@media (max-width:768px){.dashboard-container{flex-direction:column}.main-content{margin-left:0;padding:20px 20px 100px}.sidebar{background:#0f172afa;border-right:none;border-top:1px solid #ffffff1a;bottom:0!important;box-shadow:0 -5px 20px #0000004d;flex-direction:row!important;gap:10px;height:auto!important;justify-content:flex-start;left:0!important;overflow-x:auto;padding:10px;position:fixed!important;top:auto!important;white-space:nowrap;width:100%!important;z-index:9999}.sidebar .logo{display:none!important}.nav-links{flex:0 0 auto;flex-direction:row!important;gap:5px}.nav-item,.nav-links{display:flex!important}.nav-item{align-items:center;background:#0000;border-radius:8px;flex-direction:column!important;font-size:.7rem;gap:4px;justify-content:center;min-width:60px;padding:8px 12px;text-align:center;width:auto!important}.nav-icon{font-size:1.4rem;margin-bottom:2px}.sidebar-footer{border-left:1px solid #ffffff1a;border-top:none;display:flex!important;flex-direction:row!important;gap:5px;margin-top:0;padding-left:10px;padding-top:0}.sidebar-footer .nav-item{width:auto!important}.nav-item:hover{background:#ffffff0d;transform:none}.sidebar::-webkit-scrollbar{height:4px}.sidebar::-webkit-scrollbar-track{background:#ffffff0d;border-radius:4px}.sidebar::-webkit-scrollbar-thumb{background:#ffffff4d;border-radius:4px}.sidebar::-webkit-scrollbar-thumb:hover{background:#ffffff80}.nav-item.active{background:#0000;border:none;box-shadow:none;color:#6366f1;color:var(--primary)}.nav-item.active .nav-icon{color:#6366f1;color:var(--primary);transform:translateY(-2px)}.modal-content{margin:10px;max-height:85vh;padding:20px;width:95%}}.sidebar::-webkit-scrollbar{width:4px}.sidebar::-webkit-scrollbar-track{background:#ffffff0d;border-radius:4px}.sidebar::-webkit-scrollbar-thumb{background:#ffffff4d;border-radius:4px}.sidebar::-webkit-scrollbar-thumb:hover{background:#ffffff80}@media (min-width:769px) and (max-width:1024px){.sidebar{flex-shrink:0!important;width:220px!important}.main-content{margin-left:0}.logo span,.nav-item span{display:inline-block!important}}
/*# sourceMappingURL=main.b142e9e9.css.map*/