:root{--primary-color: #00495f;--primary-hover: #00254c;--bg-light: #f4f7f6;--bg-card: #ffffff;--bg-main: #f4f7f6;--white: #ffffff;--text-dark: #333333;--text-main: #333333;--text-muted: #666666;--border-color: #e2e8f0;--shadow-sm: 0 2px 4px rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px rgba(0, 0, 0, .1);--border-radius: 12px;--radius-md: 8px;--radius-lg: 16px;--accent-color: #f39c12;--active-text-color: var(--primary-color)}[data-theme=dark]{--bg-light: #0f172a;--bg-card: #1e293b;--bg-main: #0f172a;--text-dark: #f8fafc;--text-main: #f8fafc;--text-muted: #94a3b8;--border-color: #334155;--shadow-sm: 0 4px 6px rgba(0, 0, 0, .3);--shadow-md: 0 10px 15px rgba(0, 0, 0, .5);--active-text-color: #ffffff}*{box-sizing:border-box}body{margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;background-color:var(--bg-light);color:var(--text-dark);min-height:100vh}.dashboard-container{display:flex;flex-direction:column;min-height:100vh}.dashboard-header{background-color:var(--primary-color);color:var(--white);padding:15px 40px;display:flex;align-items:center;justify-content:space-between;gap:30px;position:sticky;top:0;z-index:1000;box-shadow:0 2px 10px #0000001a}.logo-container{display:flex;align-items:center;gap:15px;font-weight:700;font-size:1.1rem;padding-right:20px;border-right:1px solid rgba(255,255,255,.1);margin-right:10px}.logo-icon img{height:50px;width:auto;display:block}.search-container{flex:1;max-width:600px;position:relative}.search-input{width:100%;padding:8px 15px 8px 35px;border-radius:8px;border:none;background-color:#ffffffe6;font-size:.9rem}.search-icon{position:absolute;left:10px;top:50%;transform:translateY(-50%);color:var(--text-muted);display:flex}.search-icon svg{width:16px;height:16px}.header-actions{display:flex;align-items:center;gap:15px}.icon-button{background:none;border:none;color:var(--white);cursor:pointer;font-size:1.2rem;display:flex;align-items:center;justify-content:center;position:relative;padding:8px;border-radius:50%;transition:background .2s}.icon-button:hover{background:#ffffff1a}.notification-wrapper{position:relative}.notification-badge{position:absolute;top:4px;right:4px;background-color:#ff3b30;color:#fff;font-size:.65rem;font-weight:800;min-width:16px;height:16px;border-radius:10px;display:flex;align-items:center;justify-content:center;padding:0 4px;border:2px solid var(--primary-color)}.notification-dropdown{position:absolute;top:calc(100% + 15px);right:0;width:320px;background:var(--bg-card);border-radius:16px;box-shadow:0 15px 40px #0003;border:1px solid rgba(0,0,0,.05);z-index:2000;overflow:hidden;animation:fadeInScale .2s cubic-bezier(.165,.84,.44,1)}@keyframes fadeInScale{0%{opacity:0;transform:translateY(-10px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.notif-header{padding:15px 20px;border-bottom:1px solid #eee;background:#f8f9fa}.notif-header h4{margin:0;font-size:.95rem;color:var(--primary-color);font-weight:700}.notif-list{max-height:400px;overflow-y:auto}.notif-empty{padding:30px;text-align:center;color:#888;font-size:.9rem}.notif-item{padding:15px 20px;border-bottom:1px solid #f1f1f1;cursor:pointer;transition:background .2s;display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.notif-item:hover{background:#f0f7ff}.notif-item.unread{background:#f0f7ff;border-left:4px solid var(--primary-color);padding-left:16px}.notif-message{margin:0;font-size:.88rem;line-height:1.4;color:#333}.notif-time{display:block;margin-top:5px;color:#999;font-size:.75rem}.unread-dot{width:8px;height:8px;background:var(--primary-color);border-radius:50%;flex-shrink:0;margin-top:6px}.user-profile-info{display:flex;align-items:center;gap:12px;cursor:pointer;padding:6px 14px;border-radius:var(--radius-md);transition:all .2s ease;border:1px solid transparent}.user-profile-info:hover{background-color:#ffffff1a;border-color:#ffffff1a}.user-profile-img{width:34px;height:34px;border-radius:50%;background-color:var(--bg-card);overflow:hidden;display:flex;align-items:center;justify-content:center;border:2px solid rgba(255,255,255,.2);flex-shrink:0}.user-profile-img img{width:100%;height:100%;object-fit:cover}.user-profile-img span{color:var(--primary-color);font-weight:700;font-size:.9rem}.user-profile-name{color:#fff;font-weight:500;font-size:.95rem;max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dashboard-footer{background-color:var(--primary-color);color:var(--white);padding:20px 40px;display:flex;justify-content:space-between;align-items:center;font-size:.85rem;margin-top:auto}.footer-links{display:flex;gap:15px}.footer-links a{color:#fff;text-decoration:none;opacity:.8}.footer-links a:hover{opacity:1}.header-nav{display:flex;gap:20px;margin:0 20px}.nav-link{background:transparent;border:none;color:#fffc!important;font-weight:600;cursor:pointer;padding:8px 16px;border-radius:8px;transition:all .2s;font-size:.95rem}.nav-link.active{color:var(--active-text-color)!important;background:var(--bg-card)!important}.nav-link.active:hover{background:var(--bg-card)!important;color:var(--active-text-color)!important;opacity:.9}.nav-link:hover{color:#fff!important;background:#ffffff26}.mobile-menu-btn{display:none;background:transparent;border:none;color:var(--white);font-size:1.5rem;cursor:pointer;padding:5px}@media(max-width:900px){.dashboard-header{padding:15px 20px;flex-wrap:wrap;gap:15px}.search-container{order:4;min-width:100%;margin-top:5px}}@media(max-width:768px){.mobile-menu-btn{display:block;order:2}.logo-container{border-right:none;margin-right:auto}.logo-text{display:none}.header-nav{display:none;flex-direction:column;position:absolute;top:70px;left:0;right:0;background-color:var(--primary-color);padding:20px;box-shadow:0 10px 20px #0003;z-index:1001;margin:0;gap:10px}.header-nav.open{display:flex}.nav-link{width:100%;text-align:left;padding:12px 16px}.header-actions{order:3;gap:10px}.user-profile-name{display:none}.user-profile-info{padding:0;border:none}.notification-dropdown{width:280px;right:-50px}}.filter-bar{background-color:var(--primary-color);padding:10px 40px 25px;display:flex;align-items:flex-end;gap:30px;flex-wrap:wrap;border-bottom:1px solid rgba(255,255,255,.1)}.filter-group{display:flex;flex-direction:column;gap:8px}.filter-label{color:#ffffffe6;font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.8px;margin-bottom:2px}.semester-filter{background:#ffffff1a;padding:5px 12px;border-radius:8px}.semester-select{background:transparent;border:none;color:var(--white);padding:5px;font-size:.85rem;cursor:pointer;outline:none;appearance:none;-webkit-appearance:none}.main-filters-group{display:flex;background:#ffffff1a;padding:4px;border-radius:10px;gap:5px}.main-filter-btn{background:transparent;border:none;color:var(--white);padding:6px 16px;border-radius:8px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s}.main-filter-btn.active{background:var(--bg-card);color:var(--active-text-color)}.category-tags{display:flex;gap:8px;flex-wrap:wrap}.tag{background:#ffffff1a;border:1px solid rgba(255,255,255,.1);color:var(--white);padding:6px 14px;border-radius:20px;font-size:.85rem;white-space:nowrap;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:6px}.tag:hover{background:#fff3}.tag.active{background:var(--bg-card);color:var(--active-text-color);font-weight:700;box-shadow:0 4px 12px #00000026}.tag-clear{background:#ffffff1a;border:1px solid rgba(255,255,255,.2);color:#fff;font-size:.8rem;cursor:pointer;padding:6px 14px;border-radius:20px;transition:all .2s;font-weight:600}.tag-clear:hover{background:#fff3;color:#fff}.main-content{padding:20px;max-width:1200px;margin:0 auto;flex:1;width:100%}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.section-title{font-size:1.5rem;margin:0;color:var(--primary-color);font-weight:800}.project-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px}.project-card{background:var(--bg-card);border-radius:var(--border-radius);overflow:hidden;box-shadow:var(--shadow-sm);transition:transform .2s,box-shadow .2s;display:flex;flex-direction:column;position:relative}.project-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-md)}.card-banner{height:280px;position:relative;padding:15px;background-size:cover;background-position:center;background-repeat:no-repeat}.banner-badges{display:flex;flex-wrap:wrap;gap:8px;pointer-events:none}.tag-semester,.badge-validated,.badge-pending,.badge-rejected{font-size:.75rem;padding:4px 12px;border-radius:8px;font-weight:700;box-shadow:0 4px 10px #00000026;white-space:nowrap}.tag-semester{background:var(--primary-color);color:#fff}.badge-validated{background:#28a745;color:#fff}.badge-pending{background:#ff9800;color:#fff}.badge-rejected{background:#dc3545;color:#fff}.edit-card-btn{position:absolute;bottom:15px;right:15px;background:#ffffffe6;color:var(--primary-color);width:32px;height:32px;border-radius:8px;border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s;box-shadow:0 4px 8px #0000001a}.edit-card-btn:hover{background:var(--bg-card);transform:scale(1.1)}.card-body{padding:20px;flex-grow:1}.card-title{font-size:1.2rem;margin:0 0 8px;font-weight:700;color:var(--text-dark)}.card-description{font-size:.9rem;color:var(--text-muted);line-height:1.5;margin:0 0 10px;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.tech-stack{font-size:.8rem;color:var(--primary-color);font-weight:500;background:#00495f0d;padding:2px 8px;border-radius:4px}.demo-link-small{font-size:.8rem;color:#6366f1;font-weight:700;text-decoration:none;background:#eef2ff;padding:4px 12px;border-radius:6px;border:1px solid #c7d2fe;transition:all .2s}.demo-link-small:hover{background:#6366f1;color:#fff;border-color:#6366f1;box-shadow:0 2px 8px #6366f14d}.card-footer{padding:15px 20px;border-top:1px solid rgba(0,0,0,.05);display:flex;align-items:center;justify-content:space-between}.author-info{display:flex;align-items:center;gap:12px}.author-avatar{width:36px;height:36px;border-radius:50%;background:#eee;display:flex;align-items:center;justify-content:center;font-size:.9rem;font-weight:700;overflow:hidden;color:var(--primary-color)}.author-avatar img{width:100%;height:100%;object-fit:cover}.author-details{display:flex;flex-direction:column}.author-name{font-size:.85rem;font-weight:600;color:var(--text-dark)}.author-program{font-size:.7rem;color:var(--text-muted)}.card-date{font-size:.75rem;color:var(--text-muted)}.fab{position:fixed;bottom:80px;right:30px;width:56px;height:56px;border-radius:50%;background-color:#ff8c00;color:#fff;border:none;box-shadow:0 4px 10px #0000004d;font-size:2rem;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .2s;z-index:999}.fab:hover{transform:scale(1.1);background-color:#e67e00}.modal-overlay{position:fixed;inset:0;background:#000000b3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:2000;padding:20px}.modal-content{background:var(--bg-card);width:100%;max-width:600px;border-radius:var(--radius-lg);padding:30px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 50px #0000004d;animation:slideUpModal .4s cubic-bezier(.165,.84,.44,1)}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px;border-bottom:1px solid #eee;padding-bottom:15px}.modal-header h2{color:var(--primary-color);margin:0;font-size:1.5rem;font-weight:700}.close-btn{background:none;border:none;font-size:2rem;color:#ccc;cursor:pointer;line-height:1;transition:color .2s}.close-btn:hover{color:var(--text-dark)}.upload-form{display:flex;flex-direction:column;gap:20px}.upload-form textarea{padding:12px;border:2px solid #eee;border-radius:var(--radius-md);font-size:1rem;font-family:inherit;resize:vertical;min-height:100px;transition:border-color .3s}.upload-form textarea:focus{outline:none;border-color:var(--primary-color)}.upload-form input[type=file]{padding:10px;background:#f8f8f8;border-radius:var(--radius-md);border:1px dashed #ccc;cursor:pointer}@keyframes slideUpModal{0%{opacity:0;transform:translateY(40px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.filter-select{padding:8px 15px;border-radius:10px;border:1px solid rgba(255,255,255,.3);background:#ffffff1a;font-size:.9rem;color:#fff;cursor:pointer;outline:none;transition:all .2s;font-weight:500;appearance:none;-webkit-appearance:none}.filter-select option{background:#003747;color:#fff}.filter-select:hover{background:#fff3;border-color:#ffffff80}.opportunities-view{padding:20px;animation:fadeIn .4s ease}.opps-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px;margin-top:20px}.opp-card{background:var(--bg-card);border-radius:12px;padding:24px;box-shadow:var(--shadow-sm);border:1px solid rgba(0,0,0,.05);transition:transform .2s,box-shadow .2s;display:flex;flex-direction:column;gap:15px;position:relative}.opp-card.pending{border:2px dashed #ff9800;background:#fffdfa}.opp-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}.opp-approval-bar{display:flex;gap:10px;margin-top:15px;padding-top:15px;border-top:1px solid #eee}.opp-approval-bar button{flex:1;padding:10px;font-size:.85rem}.opp-header{display:flex;gap:15px;margin-bottom:15px}.company-logo-small{width:48px;height:48px;background:var(--primary-color);color:#fff;border-radius:10px;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.2rem;overflow:hidden}.opp-title{margin:0;font-size:1.1rem;color:var(--text-dark)}.opp-company{color:var(--text-muted);font-size:.9rem}.opp-body p{font-size:.95rem;line-height:1.6;color:var(--text-muted, #555);margin-bottom:20px;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.opp-tags{display:flex;flex-wrap:wrap;gap:8px;margin:15px 0}.opp-tag{background:#0a6ebd0d;color:var(--primary-color);padding:4px 10px;border-radius:6px;font-size:.8rem;font-weight:600}.opp-footer{border-top:1px solid #eee;padding-top:15px;margin-top:10px;display:flex;flex-direction:column;gap:12px}.opp-contact-info{display:flex;align-items:center;gap:8px;font-size:.85rem;color:var(--text-muted)}.opp-contact-info svg{color:var(--primary-color);opacity:.7}.opportunities-view .primary-action-btn{width:auto;padding:10px 24px;font-size:.9rem}.opportunities-view .section-header,.projects-view .section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px;gap:20px}.view-tab{background:#f0f2f5;border:1px solid #ddd;padding:8px 16px;border-radius:20px;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s;color:#555;white-space:nowrap}.view-tab.active{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.btn-favorite{position:absolute;top:15px;right:15px;background:var(--bg-card);border:none;width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 4px 12px #00000026;transition:all .2s;z-index:10;font-size:1.2rem;color:var(--text-muted)}.btn-favorite.active{color:#ff9800;transform:scale(1.1)}.btn-favorite:hover{transform:scale(1.15)}.card-teacher-actions{position:absolute;bottom:12px;left:12px;right:12px;background:var(--bg-card);padding:8px;border-radius:10px;display:flex;justify-content:flex-end;gap:8px;box-shadow:0 4px 15px #0000001a;z-index:20;opacity:0;pointer-events:none;transition:opacity .3s ease}.project-card:hover .card-teacher-actions,.opp-card:hover .card-teacher-actions{opacity:1;pointer-events:auto}.theme-toggle-wrapper{display:flex;align-items:center}.theme-slider{position:relative;display:inline-block;width:60px;height:30px}.theme-slider input{opacity:0;width:0;height:0}.slider{position:absolute;cursor:pointer;inset:0;background-color:var(--primary-color);transition:.4s;display:flex;align-items:center;justify-content:space-between;padding:0 5px;color:#fff}.slider.round{border-radius:34px}.slider:before{position:absolute;content:"";height:22px;width:22px;left:4px;bottom:4px;background-color:#fff;transition:.4s;border-radius:50%;z-index:2}input:checked+.slider{background-color:var(--primary-color)}input:checked+.slider:before{transform:translate(30px)}.action-dot{width:32px;height:32px;border-radius:8px;border:1px solid var(--border-color, #eee);background:var(--bg-card);color:var(--text-muted);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s}.action-dot:hover{transform:translateY(-2px);border-color:var(--primary-color);color:var(--primary-color)}.action-dot.approved{background:#e8f5e9;color:#2e7d32;border-color:#c8e6c9}.action-dot.reject{background:#fff5f5;color:#e53e3e;border-color:#feb2b2}.action-dot.validate.active{background:#e3f2fd;color:#1976d2;border-color:#bbdefb}.secondary-action-btn.active{background:#fff9db;color:#f08c00;border-color:#ffe066}.header-actions-row{display:flex;align-items:center;gap:15px}.view-tabs{margin-bottom:0!important}.btn-favorite-opp{position:absolute;top:15px;right:15px;background:none;border:none;font-size:1.3rem;cursor:pointer;z-index:5;color:#ccc;transition:all .2s}.btn-favorite-opp.active{color:#ff9800}.header-actions-row{display:flex;align-items:center;gap:20px;flex-wrap:wrap}.teacher-info-card{background:var(--bg-card);border:1px solid var(--border-color);padding:20px;border-radius:12px;line-height:1.6}.teacher-info-card p{margin:8px 0;color:var(--text-secondary)}.teacher-info-card strong{color:var(--text-primary)}.resume-link{display:inline-flex;align-items:center;gap:8px;margin-top:12px;color:var(--accent-color);text-decoration:none;font-weight:500}.resume-link:hover{text-decoration:underline}.toast-container{position:fixed;bottom:30px;right:30px;display:flex;flex-direction:column;gap:15px;z-index:10000;pointer-events:none}.toast{background:var(--bg-card);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--border-color, rgba(0, 73, 95, .1));color:var(--text-dark);padding:16px 20px 16px 25px;border-radius:12px;box-shadow:0 10px 40px #0000001f;display:flex;align-items:center;gap:15px;min-width:320px;max-width:420px;position:relative;overflow:hidden;pointer-events:auto;animation:toastSlideIn .4s cubic-bezier(.175,.885,.32,1.275) forwards}.toast:before{content:"";position:absolute;left:0;top:0;bottom:0;width:6px;background:var(--primary-color)}.toast-success:before{background:#10b981}.toast-success .toast-icon{color:#10b981;background:#10b9811a}.toast-error:before{background:#ef4444}.toast-error .toast-icon{color:#ef4444;background:#ef44441a}.toast-info:before{background:var(--primary-color)}.toast-info .toast-icon{color:var(--primary-color);background:#00495f1a}.toast-warning:before{background:var(--accent-color)}.toast-warning .toast-icon{color:var(--accent-color);background:#f39c121a}.toast-icon{display:flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:50%;flex-shrink:0}.toast span{flex-grow:1;font-size:.95rem;font-weight:600;line-height:1.4}.toast-close{background:#0000000d;border:none;width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.2rem;color:var(--text-muted);cursor:pointer;transition:all .2s;flex-shrink:0}.toast-close:hover{background:#0000001a;color:var(--text-dark)}.toast-progress{position:absolute;bottom:0;left:0;height:4px;background:#00495f26;animation:toastProgress 3.5s linear forwards}.toast-success .toast-progress{background:#10b981}.toast-error .toast-progress{background:#ef4444}.toast-info .toast-progress{background:var(--primary-color)}.toast-warning .toast-progress{background:var(--accent-color)}@keyframes toastSlideIn{0%{transform:translateY(30px) scale(.9);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}@keyframes toastProgress{0%{width:100%}}.custom-select-container{position:relative;width:100%;-webkit-user-select:none;user-select:none;margin-bottom:5px}.custom-select-header{display:flex;justify-content:space-between;align-items:center;background:#00495fe6;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1);color:#fff;padding:12px 16px;border-radius:var(--radius-md, 8px);cursor:pointer;font-size:.95rem;transition:all .2s ease;box-shadow:0 4px 6px #0000001a;min-height:45px}.custom-select-header:hover{background:#00254cf2;border-color:#fff3}.custom-select-header.open{border-bottom-left-radius:0;border-bottom-right-radius:0;background:#00254c}.custom-select-header.placeholder{color:#ffffffb3}.custom-select-arrow{font-size:.7rem;transition:transform .3s ease;color:#fffc;margin-left:10px}.custom-select-arrow.open{transform:rotate(180deg)}.custom-select-dropdown{position:absolute;top:100%;left:0;right:0;background:#00495ff2;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.1);border-top:none;border-bottom-left-radius:var(--radius-md, 8px);border-bottom-right-radius:var(--radius-md, 8px);box-shadow:0 10px 20px #0006;z-index:1000;max-height:250px;overflow-y:auto;animation:dropdownFadeIn .2s ease forwards}.custom-select-dropdown::-webkit-scrollbar{width:6px}.custom-select-dropdown::-webkit-scrollbar-track{background:#0000001a}.custom-select-dropdown::-webkit-scrollbar-thumb{background:#fff3;border-radius:10px}.custom-select-option{padding:12px 16px;color:#fff;font-size:.95rem;cursor:pointer;transition:background .15s ease;display:flex;justify-content:space-between;align-items:center}.custom-select-option:hover{background:#ffffff1a}.custom-select-option.selected{background:#f39c1233;color:var(--accent-color, #f39c12);font-weight:600}.custom-select-check{font-size:.9rem;font-weight:700}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.variant-navbar{margin-bottom:0}.variant-navbar .custom-select-header{background:#ffffff1a;backdrop-filter:none;-webkit-backdrop-filter:none;border:none;box-shadow:none;min-height:32px;padding:6px 14px;border-radius:8px;font-size:.85rem}.variant-navbar .custom-select-header:hover{background:#ffffff26}.variant-navbar .custom-select-header.open{background:#fff3}.variant-navbar .custom-select-option{font-size:.85rem;padding:8px 14px}.variant-navbar .custom-select-dropdown{top:calc(100% + 4px)}@media(max-width:768px){.filter-bar{padding:15px 20px;gap:15px}.filter-select-wrapper{min-width:100%;width:100%}.filter-group{width:100%}.main-filters-group{flex-wrap:wrap;width:100%;gap:8px}.category-tags{display:flex;flex-wrap:nowrap;overflow-x:auto;padding-bottom:5px;-webkit-overflow-scrolling:touch;width:100%}.category-tags::-webkit-scrollbar{height:0px;background:transparent}.project-grid{grid-template-columns:1fr}.form-row{flex-direction:column;gap:10px}.form-actions-inline{flex-direction:column;width:100%;gap:10px}.form-actions-inline button{width:100%}.main-content{padding:15px}.card-banner{height:220px}}.login-page{--bg-light: #f4f7f6;--bg-card: #ffffff;--bg-main: #f4f7f6;--text-dark: #333333;--text-main: #333333;--text-muted: #666666;--border-color: #e2e8f0;--active-text-color: var(--primary-color);height:100vh;width:100vw;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;background-color:#000}.login-bg-overlay{position:absolute;inset:0;background:url(/UniversityBackground.png) center/cover no-repeat;filter:blur(8px) brightness(.6);transform:scale(1.1);z-index:1}.login-card{position:relative;z-index:2;background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:40px;border-radius:var(--radius-lg);box-shadow:0 20px 40px #0000004d;width:100%;max-width:450px;text-align:center;animation:slideUp .6s ease-out}.login-logo{display:flex;align-items:center;justify-content:center;gap:10px;margin-bottom:20px}.login-logo img{height:40px}.login-logo h2{color:var(--primary-color);font-size:1.5rem;margin:0}.login-card h1{font-size:1.8rem;color:var(--text-main);margin-bottom:10px}.login-card p{color:var(--text-muted);margin-bottom:30px}.google-login-btn{display:flex;align-items:center;justify-content:center;gap:15px;width:100%;padding:14px;background:var(--bg-card);border:1px solid #ddd;border-radius:var(--radius-md);color:#555;font-weight:600;font-size:1rem;cursor:pointer;transition:all .3s ease}.google-login-btn:hover{background:#f8f8f8;box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.google-login-btn img{height:24px}.login-footer{margin-top:40px;font-size:.8rem;color:#999}.onboarding.auth-container{--bg-light: #f4f7f6;--bg-card: #ffffff;--bg-main: #f4f7f6;--text-dark: #333333;--text-main: #333333;--text-muted: #666666;--border-color: #e2e8f0;--active-text-color: var(--primary-color);display:flex;justify-content:center;align-items:center;min-height:100vh;background:var(--bg-light);font-family:inherit;padding:20px;color:var(--text-dark)}.onboarding-card{background:var(--bg-card);padding:40px;border-radius:var(--radius-lg);box-shadow:var(--shadow-md);width:100%;max-width:600px;animation:fadeIn .5s ease}.onboarding-card h2{color:var(--primary-color);margin-bottom:10px}.onboarding-card p{color:var(--text-muted);margin-bottom:30px}.onboarding-form{display:flex;flex-direction:column;gap:20px}.form-group{display:flex;flex-direction:column;gap:8px}.form-row{display:grid;grid-template-columns:1fr 2fr;gap:20px}.form-group label{font-size:.9rem;font-weight:600;color:var(--text-main)}.form-group input,.form-group select{padding:12px;border:2px solid #eee;border-radius:var(--radius-md);font-size:1rem;transition:border-color .3s ease}.form-group input:focus,.form-group select:focus{outline:none;border-color:var(--primary-color)}.submit-btn{background-color:var(--accent-color);color:#fff;border:none;padding:15px;border-radius:var(--radius-md);font-size:1.1rem;font-weight:700;cursor:pointer;transition:all .3s ease;margin-top:10px}.submit-btn:hover{background-color:#f79c2a;transform:translateY(-2px);box-shadow:0 10px 20px #f39c1233}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.loading-screen{height:100vh;display:flex;align-items:center;justify-content:center;font-size:1.5rem;color:var(--primary-color);font-weight:700}@media(max-width:768px){.login-card,.onboarding-card{padding:25px}.form-row{grid-template-columns:1fr;gap:15px}}.profile-view{padding:40px 20px;max-width:1000px;margin:0 auto;animation:fadeIn .5s ease}.profile-header-card{background:var(--bg-card);border-radius:var(--radius-lg);padding:40px;display:flex;align-items:center;justify-content:space-between;box-shadow:var(--shadow-md);margin-bottom:40px;position:relative;overflow:hidden}.profile-info-main{display:flex;align-items:center;gap:30px}.profile-avatar-large{width:120px;height:120px;border-radius:50%;border:4px solid var(--primary-color);padding:4px;flex-shrink:0}.profile-avatar-large img{width:100%;height:100%;border-radius:50%;object-fit:cover}.profile-details-text{flex:1;min-width:0}.profile-details-text h1{margin:0 0 5px;color:var(--text-dark);font-size:2rem}.profile-subtext{color:var(--text-muted);display:flex;flex-direction:column;gap:5px}.profile-link{color:var(--primary-color);text-decoration:none;font-weight:600;display:flex;align-items:center;gap:5px}.edit-profile-btn{background:#ff8c00;color:#fff;border:none;padding:12px 25px;border-radius:10px;font-weight:700;cursor:pointer;display:flex;align-items:center;gap:10px;transition:all .3s;flex-shrink:0}.edit-profile-btn:hover{background:#e67e00;transform:translateY(-2px);box-shadow:0 5px 15px #ff8c004d}.profile-sections-grid{display:grid;grid-template-columns:1fr;gap:30px}.profile-section-title{font-size:1.5rem;margin-bottom:20px;color:var(--text-dark);display:flex;align-items:center}.add-btn-professional{background:var(--bg-light);color:var(--text-dark, #475569);border:1px solid var(--border-color, #e2e8f0);padding:6px 14px;border-radius:8px;font-size:.85rem;font-weight:600;display:inline-flex;align-items:center;gap:8px;cursor:pointer;transition:all .2s;margin-left:15px;font-family:inherit}.add-btn-professional:hover{background:var(--border-color, #e2e8f0);transform:translateY(-1px)}.add-btn-professional svg{width:14px;height:14px}.resume-upload-section{background:var(--bg-light, #f8f9fa);border:2px dashed var(--border-color, #ddd);padding:20px;border-radius:var(--radius-md);text-align:center;margin-bottom:30px}.resume-link{display:inline-flex;align-items:center;gap:10px;background:var(--primary-color);color:#fff;padding:10px 20px;border-radius:8px;text-decoration:none;margin-top:10px}.edit-profile-form{display:flex;flex-direction:column;gap:15px;margin-top:10px;width:100%}.edit-profile-form input{padding:10px;border:1px solid var(--border-color, rgba(0, 0, 0, .1));border-radius:8px;font-size:1rem;width:100%;background:var(--bg-light);color:var(--text-dark)}.form-row{display:flex;gap:15px}.form-actions-inline{display:flex;gap:10px;margin-top:10px}.profile-subtext span,.profile-link{display:flex;align-items:center;gap:8px}.badge-gpa{display:none}.profile-skills-summary{display:flex;flex-wrap:wrap;gap:8px;margin-top:15px}.skill-chip{background:#f0f2f5;color:#444;padding:6px 14px;border-radius:12px;font-size:.8rem;font-weight:600;transition:all .2s}.skill-chip:hover{background:var(--primary-color);color:#fff}.skill-chip.more{background:#eee;color:#888}.form-group-inline{display:flex;gap:15px}.form-group-inline input{flex:1}.edit-profile-form input,.edit-profile-form textarea{padding:12px 15px;border:1.5px solid var(--border-color, #eee);border-radius:10px;font-size:.95rem;transition:border-color .2s;background:var(--bg-light);color:var(--text-dark)}.edit-profile-form input:focus{border-color:var(--primary-color);outline:none}.profile-bio{word-break:break-word}@media(max-width:768px){.profile-view{padding:20px 15px}.profile-header-card{padding:25px 20px;flex-direction:column;align-items:stretch}.profile-info-main{flex-direction:column;text-align:center;gap:15px}.profile-avatar-large{width:100px;height:100px;margin:0 auto}.profile-subtext{align-items:center}.profile-links{justify-content:center;flex-wrap:wrap}.edit-profile-btn{width:100%;justify-content:center;margin-top:20px}.form-row,.form-group-inline{flex-direction:column;gap:15px}.availability-badges{justify-content:center}.skills-detailed-grid{grid-template-columns:1fr}}.details-view{padding:30px 20px 60px;max-width:1200px;margin:0 auto;animation:fadeIn .4s ease-out}.breadcrumb{margin-bottom:20px;color:var(--text-muted);font-size:.9rem}.breadcrumb span{cursor:pointer}.breadcrumb span:hover{color:var(--primary-color)}.details-grid{display:grid;grid-template-columns:2fr 1fr;gap:40px}.details-main-image{width:100%;height:450px;border-radius:var(--radius-lg);object-fit:cover;box-shadow:var(--shadow-md);margin-bottom:30px}.details-content h1{font-size:2.5rem;color:var(--primary-color);margin:0 0 20px}.details-meta{display:flex;gap:15px;margin-bottom:25px}.details-tag{background:#00495f1a;color:var(--primary-color);padding:6px 15px;border-radius:20px;font-weight:600;font-size:.85rem}.details-tag.sector{background:#e3f2fd;color:#0d47a1}.status-badge{padding:6px 12px;border-radius:6px;font-size:.75rem;font-weight:800}.status-badge.pending{background:#fff3e0;color:#ef6c00}.status-badge.approved{background:#e8f5e9;color:#2e7d32}.status-badge.rejected{background:#ffebee;color:#c62828}.details-description{font-size:1.1rem;line-height:1.7;color:#444;margin-bottom:40px}.sidebar-card{background:var(--bg-card);border-radius:var(--radius-lg);padding:25px;box-shadow:var(--shadow-sm);position:sticky;top:100px}.sidebar-title{font-size:1.2rem;font-weight:700;margin-bottom:20px;color:var(--text-dark)}.detail-item{display:flex;justify-content:space-between;padding:12px 0;border-bottom:1px solid #eee;font-size:.95rem}.detail-label{color:var(--text-muted)}.detail-value{font-weight:600;color:var(--text-dark)}.primary-action-btn{width:100%;background:var(--primary-color);color:#fff;border:none;padding:15px;border-radius:var(--radius-md);font-weight:700;font-size:1rem;margin-top:25px;cursor:pointer;transition:all .3s}.secondary-action-btn{width:100%;background:var(--bg-card);color:var(--primary-color);border:1px solid var(--primary-color);padding:12px;border-radius:var(--radius-md);font-weight:600;margin-top:15px;cursor:pointer}.more-author-section{margin-top:80px}.author-strip{display:flex;align-items:center;gap:15px;margin-bottom:15px}.author-strip img{width:40px;height:40px;border-radius:50%}.details-description h3{margin:25px 0 10px;color:var(--text-dark);font-size:1.2rem;border-bottom:2px solid var(--primary-color);display:inline-block;padding-bottom:5px}.details-description p{line-height:1.6;color:var(--text-dark, #555);background:var(--bg-light);padding:15px;border-radius:8px}@media(max-width:768px){.details-view{padding:20px 15px}.details-grid{grid-template-columns:1fr;gap:20px}.details-main-image{height:250px;margin-bottom:20px}.details-content h1{font-size:1.8rem}.details-meta{flex-wrap:wrap}.sidebar-card{position:static;margin-top:20px}}
