body{background-color:#f2f2f2!important}:root{--teal:#2a9d8f;--orange:#f4a261;--light-teal:#e0f2f1;--dark-teal:#1d7874;--light-orange:#ffedd5;--light-bg:#f8f9fa;--dark-text:#212529;--medium-text:#495057;--light-text:#6c757d;--white:#fff;--border-color:#dee2e6;--shadow-sm:0 1px 3px rgba(0,0,0,.05),0 1px 2px rgba(0,0,0,.03);--shadow-md:0 4px 8px rgba(0,0,0,.07),0 2px 4px rgba(0,0,0,.05);--shadow-lg:0 10px 20px rgba(0,0,0,.1),0 3px 6px rgba(0,0,0,.05);--font-primary:"Segoe UI",Tahoma,Geneva,Verdana,sans-serif;--color-career:var(--teal);--color-academic:#2ecc71;--color-startup:#3498db;--color-money:var(--orange);--color-confidence:#9b59b6;--color-pending:#e74c3c}*{box-sizing:border-box;font-family:var(--font-primary);margin:0;padding:0}body,html{height:100%}body{background-color:var(--light-bg);color:var(--dark-text);display:flex;flex-direction:column;font-size:15px;line-height:1.6}.dashboard-wrapper{display:flex;flex-grow:1;min-height:0}.btn{border:2px solid transparent;border-radius:25px;box-shadow:var(--shadow-sm);cursor:pointer;display:inline-block;font-size:.95rem;font-weight:600;padding:10px 25px;text-align:center;text-decoration:none;transition:all .3s ease}.btn-sm{border-radius:20px;font-size:.85rem;padding:5px 15px}.btn-xs{border-radius:15px;font-size:.75rem;padding:3px 10px}.btn-primary{background-color:var(--orange);border-color:var(--orange);color:var(--white)}.btn-primary:hover{background-color:#e8914d;border-color:#e8914d;box-shadow:var(--shadow-md);transform:translateY(-2px)}.btn-secondary{background-color:var(--white);border-color:var(--teal);color:var(--teal)}.btn-secondary:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.btn-secondary:hover,.btn-teal{background-color:var(--teal);color:var(--white)}.btn-teal{border-color:var(--teal)}.btn-teal:hover{background-color:var(--dark-teal);border-color:var(--dark-teal);box-shadow:var(--shadow-md);transform:translateY(-2px)}.btn-link{background:none;border:none;box-shadow:none;color:var(--teal);cursor:pointer;font-size:inherit;padding:0;text-decoration:none}.btn-link:hover{color:var(--dark-teal);text-decoration:underline}.card-dashboard{background-color:var(--white);border:1px solid var(--border-color);border-radius:10px;box-shadow:var(--shadow-md);display:flex;flex-direction:column;margin-bottom:1.5rem;padding:1.5rem}.card-dashboard .card-header{border-bottom:1px solid var(--border-color);flex-shrink:0;margin-bottom:1rem;padding-bottom:.8rem}.card-dashboard .card-header h3{align-items:center;color:var(--dark-text);display:flex;font-size:1.2rem;margin:0}.card-dashboard .card-title-icon{color:var(--teal);font-size:1.1em;margin-right:.6rem}.card-dashboard .card-content{flex-grow:1}.card-dashboard .actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:auto;padding-top:1rem}.top-navbar{background-color:var(--white);box-shadow:var(--shadow-md);flex-shrink:0;justify-content:space-between;padding:.8rem 2%;position:sticky;top:0;z-index:1000}.top-navbar,.top-navbar .logo{align-items:center;display:flex}.top-navbar .logo{gap:10px;text-decoration:none}.top-navbar .logo img{border-radius:50%;height:40px}.top-navbar .logo div{line-height:1.2}.top-navbar .logo h1{color:var(--dark-text);font-size:1.2rem;margin:0}.top-navbar .logo span{color:var(--teal);display:block;font-size:.7rem}.top-nav-actions{align-items:center;display:flex;gap:1.5rem}.top-nav-actions a,.top-nav-actions i{color:var(--medium-text);cursor:pointer;text-decoration:none;transition:color .3s ease}.top-nav-actions a:hover,.top-nav-actions i:hover{color:var(--teal)}.top-nav-actions .profile-icon img{border:2px solid var(--border-color);border-radius:50%;cursor:pointer;height:35px;-o-object-fit:cover;object-fit:cover;vertical-align:middle;width:35px}.sidebar{background-color:var(--white);border-right:1px solid var(--border-color);box-shadow:0 2px 5px #0000001a;flex-shrink:0;width:240px;z-index:999}.sidebar,.sidebar-sticky-content{display:flex;flex-direction:column}.sidebar-sticky-content{height:calc(100vh - 61px);overflow-y:auto;position:sticky;top:61px}.sidebar-profile{border-bottom:1px solid var(--border-color);flex-shrink:0;padding:1.5rem 1rem;text-align:center}.sidebar-profile img{border:3px solid var(--light-teal);border-radius:50%;height:80px;margin-bottom:.75rem;-o-object-fit:cover;object-fit:cover;width:80px}.sidebar-profile h4{color:var(--dark-text);font-size:1.1rem;font-weight:600;margin:0}.sidebar-nav{flex-grow:1;padding:1rem 0}.sidebar-nav ul{list-style:none;margin:0;padding:0}.sidebar-nav li a{align-items:center;border-left:4px solid transparent;color:var(--medium-text);display:flex;font-size:.95rem;font-weight:500;padding:12px 1.5rem;text-decoration:none;transition:background-color .3s ease,color .3s ease,border-color .3s ease}.sidebar-nav li a i{color:var(--light-text);font-size:1.1rem;margin-right:12px;text-align:center;transition:color .3s ease;width:20px}.sidebar-nav li a:hover{background-color:var(--light-bg);border-left-color:var(--light-teal);color:var(--dark-teal)}.sidebar-nav li a:hover i{color:var(--dark-teal)}.sidebar-nav li a.active{background-color:var(--light-teal);border-left-color:var(--teal);color:var(--dark-teal);font-weight:600}.sidebar-nav li a.active i{color:var(--dark-teal)}.sidebar-nav li.nav-separator{background-color:var(--border-color);height:1px;margin:1rem 1.5rem}.sidebar-nav .sub-menu{display:none;padding-left:calc(1.5rem + 32px)}.sidebar-nav li.has-submenu.open>.sub-menu{display:block}.sidebar-nav li.has-submenu>a{position:relative}.sidebar-nav li.has-submenu>a .arrow{font-size:.8em;position:absolute;right:1.5rem;transition:transform .3s ease}.sidebar-nav li.has-submenu.open>a .arrow{transform:rotate(90deg)}.sidebar-footer{border-top:1px solid var(--border-color);color:var(--light-text);flex-shrink:0;font-size:.85rem;margin-top:auto;padding:1rem 1.5rem}.sidebar-footer a{color:var(--teal);text-decoration:none}.sidebar-footer a:hover{text-decoration:underline}.main-content{flex-grow:1;overflow-y:auto;padding:2rem}.welcome-banner{align-items:center;background:linear-gradient(to right,var(--light-teal),#d1e8e7);border-radius:10px;display:flex;justify-content:space-between;margin-bottom:2rem;padding:1.5rem 2rem}.welcome-banner h2{color:var(--dark-text);font-size:1.5rem;font-weight:600;margin:0}.welcome-banner p{color:var(--medium-text);margin:.5rem 0 0}.dashboard-grid{display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin-bottom:2rem}.mentor-card .mentor-info{align-items:center;display:flex;margin-bottom:1rem}.mentor-card img{border-radius:50%;height:50px;margin-right:1rem;-o-object-fit:cover;object-fit:cover;width:50px}.mentor-card .mentor-details h5{font-size:1rem;font-weight:600;margin:0 0 .2rem}.mentor-card .mentor-details p{color:var(--light-text);font-size:.85rem;margin:0}.course-card-dashboard .course-image-placeholder{align-items:center;background-color:var(--light-bg);border-radius:8px;color:var(--medium-text);display:flex;font-size:1.5rem;height:100px;justify-content:center;margin-bottom:1rem}.course-card-dashboard h5{font-size:1.1rem;font-weight:600;margin:0 0 .5rem}.course-card-dashboard p.description{color:var(--medium-text);flex-grow:1;font-size:.9rem;margin-bottom:1rem}.course-card-dashboard .progress-info{align-items:center;color:var(--light-text);display:flex;font-size:.8rem;justify-content:space-between;margin-bottom:.5rem}.course-card-dashboard .progress-bar{background-color:var(--light-bg);border-radius:4px;height:8px;margin-bottom:1rem;overflow:hidden}.course-card-dashboard .progress-bar div{background-color:var(--teal);border-radius:4px;height:100%;width:60%}.cta-card{align-items:center;background-color:var(--light-bg);border:2px dashed var(--border-color);color:var(--medium-text);display:flex;flex-direction:column;justify-content:center;min-height:150px;text-align:center}.cta-card i{color:var(--light-text);font-size:2.5rem;margin-bottom:1rem}.cta-card p{font-weight:500;margin-bottom:1rem}.goals-list{list-style:none;margin:0;padding:0}.goals-list li{align-items:center;color:var(--medium-text);display:flex;font-size:.95rem;margin-bottom:.8rem}.goals-list li i{color:var(--light-text);cursor:pointer;font-size:1.2em;margin-right:.8rem}.goals-list li.completed{color:var(--light-text);text-decoration:line-through}.goals-list li.completed i{color:var(--teal)}.schedule-sidebar{background-color:var(--white);border-left:1px solid var(--border-color);box-shadow:-2px 0 5px #0000000d;display:flex;flex-direction:column;flex-shrink:0;width:300px}.schedule-sticky-content{height:calc(100vh - 61px);overflow-y:auto;padding:2rem 1.5rem;position:sticky;top:61px}.schedule-sidebar h3{color:var(--dark-text);font-size:1.3rem;margin-bottom:1.5rem}.calendar-container{margin-bottom:2rem}.calendar-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem;padding:0 .5rem}.calendar-header h4{color:var(--dark-teal);font-size:1.1rem;font-weight:600;margin:0}.calendar-nav button{background:none;border:none;color:var(--teal);cursor:pointer;font-size:1.5rem;line-height:1;padding:.2rem;transition:color .3s ease}.calendar-nav button:hover{color:var(--dark-teal)}.calendar-grid{display:grid;gap:4px;grid-template-columns:repeat(7,1fr);margin-bottom:.5rem}.calendar-day-header{color:var(--light-text);font-size:.8rem;font-weight:600;padding-bottom:.3rem;text-align:center}.calendar-day{border:1px solid var(--border-color);border-radius:4px;cursor:pointer;font-size:.8rem;min-height:35px;padding:.3rem;position:relative;text-align:center;transition:background-color .3s ease}.calendar-day:not(.other-month):not(.blocked):hover{background-color:var(--light-teal)}.calendar-day .day-number{display:block}.calendar-day.other-month{background-color:var(--light-bg);border-color:transparent;color:#ccc;cursor:default}.calendar-day.today .day-number{align-items:center;background-color:var(--orange);border-radius:50%;color:#fff;display:inline-flex;font-weight:700;height:22px;justify-content:center;width:22px}.calendar-day.blocked{background-color:#e9ecef!important;border-color:#ced4da;border-style:dashed;color:var(--light-text);cursor:not-allowed}.calendar-day.blocked:after{display:none}.upcoming-sessions h4{border-top:1px solid var(--border-color);color:var(--dark-text);font-size:1.1rem;margin-bottom:1rem;padding-top:1.5rem}.session-item{align-items:start;border-bottom:1px dashed var(--border-color);display:flex;gap:.5rem;justify-content:space-between;padding:.8rem 0}.session-item:last-child{border-bottom:none}.session-item .details strong{display:block;font-size:.9rem;font-weight:600;margin-bottom:.2rem}.session-item .details span{color:var(--medium-text);display:block;font-size:.85rem}.session-item .actions{flex-shrink:0;margin-left:auto;padding-left:.5rem}.session-item.category-career{border-left:3px solid var(--color-career-growth);padding-left:.8rem}.session-item.category-academic{border-left:3px solid var(--color-academic-growth);padding-left:.8rem}.session-item.category-money{border-left:3px solid var(--color-financial-literacy);padding-left:.8rem}.session-item.category-event{border-left:3px solid var(--orange);padding-left:.8rem}.session-item.category-deadline{border-left:3px solid var(--color-confidence);padding-left:.8rem}.calendar-filters-mentee{display:flex;gap:.5rem;margin-bottom:1rem}.calendar-filters-mentee button{background-color:var(--white);border:1px solid var(--border-color);border-radius:15px;color:var(--medium-text);cursor:pointer;font-size:.8rem;font-weight:500;padding:5px 12px;transition:all .3s ease}.calendar-filters-mentee button:hover{background-color:var(--light-bg);border-color:var(--medium-text)}.calendar-filters-mentee button.active{background-color:var(--teal);border-color:var(--teal);box-shadow:var(--shadow-sm);color:var(--white)}.calendar-day.has-deadline:after,.calendar-day.has-event:after,.calendar-day.has-session:after{background-color:transparent;border-radius:50%;bottom:4px;content:"";height:5px;left:50%;position:absolute;transform:translate(-50%);width:5px}.calendar-day.has-event:after{background-color:var(--orange)}.calendar-day.has-session:after{background-color:var(--teal)}.calendar-day.has-deadline:after{background-color:var(--color-confidence)}.calendar-day.has-session.has-deadline:after,.calendar-day.has-session.has-event.has-deadline:after,.calendar-day.has-session.has-event:after{background-color:var(--teal)}.calendar-day.has-event.has-deadline:after{background:linear-gradient(45deg,var(--orange) 50%,var(--color-confidence) 50%)}.modal-content h4{border-bottom:1px solid var(--border-color);color:var(--dark-teal);font-size:1.3rem;margin-bottom:1.5rem;margin-top:0;padding-bottom:.8rem}#modal-event-list{list-style:none;padding:0}.modal-event-item{align-items:flex-start;border-bottom:1px dashed var(--border-color);display:flex;gap:1rem;padding:.8rem 0}.modal-event-item:last-child{border-bottom:none;padding-bottom:0}.modal-event-item .time{color:var(--teal);flex-shrink:0;font-size:.9rem;font-weight:600;width:70px}.modal-event-item .details strong{display:block;font-size:1rem;font-weight:600;margin-bottom:.2rem}.modal-event-item .details span{color:var(--medium-text);display:block;font-size:.85rem}.modal-event-item .details .event-type-icon{color:var(--light-text);margin-right:5px}#modal-no-events,#no-upcoming-events-msg{color:var(--medium-text);display:none;padding-top:1rem;text-align:center}@media (max-width:1200px){.schedule-sidebar{width:260px}}@media (max-width:992px){.dashboard-wrapper{flex-direction:column}.sidebar{border-bottom:1px solid var(--border-color);border-right:none;box-shadow:none;overflow-x:auto;overflow-y:hidden;padding:.5rem 1rem;width:100%}.sidebar,.sidebar-sticky-content{align-items:center;flex-direction:row;height:auto;position:static}.sidebar-sticky-content{overflow-y:visible}.sidebar-profile{display:none}.sidebar-nav{align-items:center;display:flex;flex-grow:0;padding:0}.sidebar-nav ul{display:flex;gap:.5rem}.sidebar-nav li a{border-bottom:3px solid transparent;border-left:none;border-radius:4px;padding:8px 12px}.sidebar-nav li a.active{background-color:transparent;border-bottom-color:var(--teal)}.sidebar-nav li a i{font-size:1rem;margin-right:5px}.sidebar-nav .sub-menu{display:none!important}.sidebar-footer,.sidebar-nav li.has-submenu>a .arrow{display:none}.schedule-sidebar{border-left:none;border-top:1px solid var(--border-color);box-shadow:none;margin-top:1rem;width:100%}.schedule-sidebar,.schedule-sticky-content{height:auto;position:static}}@media (max-width:768px){.main-content{padding:1.5rem}.welcome-banner{flex-direction:column;gap:.5rem;padding:1rem;text-align:center}.welcome-banner h2{font-size:1.3rem}.dashboard-grid{grid-template-columns:1fr}.top-navbar .logo h1{font-size:1rem}.top-navbar .logo span{font-size:.65rem}.top-nav-actions{gap:1rem}.top-nav-actions a,.top-nav-actions i{font-size:1.2rem}.sidebar{padding:.3rem .5rem}.sidebar-nav li a{font-size:.9rem;padding:6px 8px}}@media (max-width:480px){.schedule-sticky-content{padding:1.5rem 1rem}.calendar-day{font-size:.75rem;min-height:30px;padding:.2rem}.calendar-day-header{font-size:.7rem}.session-item{align-items:start;flex-direction:column}.session-item .actions{margin-left:0;margin-top:.5rem}}
