.toast-container{position:fixed;top:calc(var(--nav-height, 64px) + 16px);right:var(--spacing-lg);z-index:10000;display:flex;flex-direction:column;gap:var(--spacing-sm);pointer-events:none}.toast{--toast-color: rgb(var(--accent-rgb));position:relative;display:flex;align-items:center;gap:.75rem;padding:.85rem .85rem .85rem 1rem;background:#ffffffeb;backdrop-filter:blur(16px) saturate(180%);-webkit-backdrop-filter:blur(16px) saturate(180%);border:1px solid var(--border-subtle);border-radius:14px;box-shadow:var(--shadow-lg);min-width:300px;max-width:440px;overflow:hidden;pointer-events:auto;cursor:pointer;animation:toastIn .5s var(--ease-spring) backwards;transition:transform var(--duration) var(--ease-out),box-shadow var(--duration) var(--ease-out)}.toast:hover{transform:translate(-3px);box-shadow:var(--shadow-xl)}.toast-success{--toast-color: var(--success)}.toast-error{--toast-color: var(--error)}.toast-warning{--toast-color: var(--warning)}.toast-info{--toast-color: rgb(var(--accent-rgb))}.toast-icon{flex-shrink:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:10px;font-size:1.15rem!important;color:var(--toast-color);background:color-mix(in srgb,var(--toast-color) 12%,transparent)}.toast-message{flex:1;color:var(--text-dark);font-size:.9rem;font-weight:500;line-height:1.45}.toast-close{background:none;border:none;color:var(--text-light);cursor:pointer;padding:0;width:28px;height:28px;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:color var(--duration-fast) var(--ease-out),background-color var(--duration-fast) var(--ease-out)}.toast-close .material-icons{font-size:1.1rem}.toast-close:hover{color:var(--text-dark);background:var(--bg-light)}.toast-progress{position:absolute;left:0;bottom:0;height:3px;width:100%;background:var(--toast-color);opacity:.55;transform-origin:left;animation:toastProgress var(--toast-duration, 3s) linear forwards}@keyframes toastIn{0%{transform:translate(calc(100% + 24px)) scale(.96);opacity:0}to{transform:translate(0) scale(1);opacity:1}}@keyframes toastProgress{0%{transform:scaleX(1)}to{transform:scaleX(0)}}@media(max-width:768px){.toast-container{right:var(--spacing-md);left:var(--spacing-md)}.toast{min-width:auto;max-width:100%}}.skeleton{display:block;width:100%;height:1rem;border-radius:6px;background:linear-gradient(90deg,rgba(var(--primary-rgb),.1),rgba(var(--primary-rgb),.2),rgba(var(--primary-rgb),.1) 80%);background-size:200% 100%;animation:shimmer 1.6s ease-in-out infinite;flex-shrink:0}.page-skeleton{animation:skeletonReveal .4s var(--ease-out) .12s backwards}@keyframes skeletonReveal{0%{opacity:0}to{opacity:1}}.skeleton-header{animation:none}.skeleton-row{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.skeleton-stack{display:flex;flex-direction:column;gap:.55rem;min-width:0}.skeleton-stack-lg{gap:var(--spacing-sm)}.skeleton-text{display:flex;flex-direction:column;gap:.55rem}.skeleton-card,.skeleton-panel{background:var(--bg-main);border:1px solid var(--border-subtle);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-xs);padding:1.35rem 1.5rem}.skeleton-panel{margin-bottom:var(--spacing-lg)}.skeleton-panel>.skeleton-grid{margin-top:1.25rem;margin-bottom:0}.skeleton-card-footer{justify-content:space-between;margin-top:1.4rem;padding-top:1rem;border-top:1px solid var(--border-subtle)}.skeleton-list-row{flex-wrap:nowrap;gap:1rem}.skeleton-grid{display:grid;gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.skeleton-grid-stats{grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));margin-bottom:var(--spacing-xl)}.skeleton-grid-cards{grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr))}.skeleton-grid-2{grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr))}.skeleton-toolbar{display:flex;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg)}.skeleton-tabs{display:flex;gap:1.75rem;padding:0 .5rem .9rem;margin-bottom:var(--spacing-lg);border-bottom:1px solid var(--border-subtle);overflow:hidden}.skeleton-hero h2,.skeleton-header h2{font-size:clamp(1.5rem,2.4vw,1.9rem);font-weight:800;letter-spacing:-.03em}.skeleton-profile{display:flex;align-items:center;gap:1.5rem;flex-wrap:wrap}.skeleton-article{max-width:860px;margin:0 auto}.skeleton-calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;margin-top:1.25rem}.skeleton-item{animation:fadeUp .5s var(--ease-out) backwards;animation-delay:calc(.12s + var(--i, 0) * 60ms);min-width:0}.skeleton-stack>.skeleton-item,.skeleton-grid>.skeleton-item{display:block}.skeleton-tabs>.skeleton-item{display:contents}@media(max-width:640px){.skeleton-hide-sm{display:none}}.app-splash{position:fixed;inset:0;z-index:3000;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;background:radial-gradient(600px 300px at 50% 35%,rgba(var(--accent-rgb),.1),transparent 70%),var(--bg-light);opacity:0;transition:opacity .4s var(--ease-out)}.app-splash.is-visible{opacity:1}.app-splash-mark{width:64px;height:64px;display:grid;place-items:center;border-radius:18px;background:var(--gradient-primary);color:#fff;box-shadow:inset 0 1px #ffffff4d,0 14px 32px -10px rgba(var(--primary-rgb),.9);animation:splashPulse 1.8s var(--ease-in-out) infinite}.app-splash-mark .material-icons{font-size:2rem}@keyframes splashPulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.app-splash-name{font-family:var(--font-display);font-weight:800;font-size:1.15rem;letter-spacing:-.02em;color:var(--text-dark)}.app-splash-name span{color:var(--primary-dark)}.app-splash-bar{width:140px;height:3px;border-radius:3px;background:rgba(var(--primary-rgb),.18);overflow:hidden}.app-splash-bar span{display:block;width:40%;height:100%;border-radius:inherit;background:var(--gradient-accent);animation:indeterminate 1.2s var(--ease-in-out) infinite}@keyframes indeterminate{0%{transform:translate(-100%)}to{transform:translate(250%)}}.top-progress{position:fixed;top:var(--nav-height);left:0;right:0;height:3px;z-index:1001;pointer-events:none;overflow:hidden}.top-progress span{display:block;height:100%;background:var(--gradient-accent);box-shadow:0 0 10px rgba(var(--accent-rgb),.6);transform-origin:left}.top-progress.is-running span{animation:progressRun 8s cubic-bezier(.1,.7,.2,1) forwards}.top-progress.is-done span{transform:scaleX(1);opacity:0;transition:transform .25s var(--ease-out),opacity .3s ease .15s}@keyframes progressRun{0%{transform:scaleX(0)}to{transform:scaleX(.85)}}.inline-status{max-width:420px;margin:12vh auto 0;text-align:center;animation:fadeUp .5s var(--ease-out) backwards}.inline-status-icon{position:relative;width:72px;height:72px;margin:0 auto 1.25rem;display:grid;place-items:center;border-radius:50%;background:var(--primary-lighter);color:var(--primary-darker)}.inline-status-icon .material-icons{font-size:1.9rem}.inline-status-ring{position:absolute;inset:-4px;border-radius:50%;border:3px solid transparent;border-top-color:rgb(var(--accent-rgb));animation:spin .9s linear infinite}.inline-status h2{font-size:1.3rem;font-weight:800;margin-bottom:.4rem}.inline-status p{color:var(--text-medium)}.btn[aria-busy=true]{pointer-events:none;cursor:progress}.btn[aria-busy=true]>.material-icons{display:none}.btn[aria-busy=true]:before{content:"";width:.95em;height:.95em;flex-shrink:0;border-radius:50%;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;animation:spin .7s linear infinite}.btn-outline[aria-busy=true]:before,.btn-secondary[aria-busy=true]:before{border-color:rgba(var(--primary-rgb),.3);border-top-color:var(--primary-darker)}.nav-bar{display:flex;justify-content:space-between;align-items:center;padding:0 var(--spacing-lg);padding-left:max(var(--spacing-lg),env(safe-area-inset-left));padding-right:max(var(--spacing-lg),env(safe-area-inset-right));background:var(--bg-glass);border-bottom:1px solid var(--border-subtle);position:fixed;top:0;left:0;right:0;z-index:1000;height:var(--nav-height);backdrop-filter:saturate(180%) blur(16px);-webkit-backdrop-filter:saturate(180%) blur(16px);transition:box-shadow var(--duration) var(--ease-out),border-color var(--duration) var(--ease-out),background-color var(--duration) var(--ease-out)}.nav-bar:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:1px;background:linear-gradient(90deg,transparent,rgba(var(--accent-rgb),.35),transparent);opacity:0;transition:opacity var(--duration-slow) var(--ease-out);pointer-events:none}.nav-bar.scrolled{background:#ffffffd9;box-shadow:0 6px 24px -12px #3c3c6e40}.nav-bar.scrolled:after{opacity:1}.nav-bar .nav-left{display:flex;align-items:center;gap:var(--spacing-sm)}.nav-brand{display:flex;align-items:center;gap:.65rem;font-size:1.0625rem;font-weight:700;color:var(--text-dark);-webkit-user-select:none;user-select:none;border:none;background:none;padding:4px 6px 4px 4px;border-radius:12px;cursor:pointer;font-family:var(--font-display)}.brand-icon{width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;border-radius:10px;background:var(--gradient-primary);color:#fff;font-size:1.25rem!important;box-shadow:inset 0 1px #ffffff40,0 4px 12px -2px rgba(var(--primary-rgb),.55);transition:transform var(--duration-slow) var(--ease-spring);animation:brandSwap .5s var(--ease-out)}.nav-brand:hover .brand-icon{transform:rotate(-8deg) scale(1.06)}@keyframes brandSwap{0%{opacity:0;transform:scale(.6) rotate(-30deg)}to{opacity:1;transform:scale(1) rotate(0)}}.brand-text{letter-spacing:-.02em}.brand-text .brand-accent{background:var(--gradient-accent);-webkit-background-clip:text;background-clip:text;color:transparent}.nav-right{display:flex;align-items:center;gap:var(--spacing-lg)}.user-name{color:var(--text-dark);font-weight:500;font-size:.9375rem;white-space:nowrap}.nav-actions{display:flex;align-items:center;gap:var(--spacing-xs)}.apps-icon,.menu-toggle{width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:12px;cursor:pointer;position:relative;background:transparent;border:1px solid transparent;color:var(--text-medium);transition:background-color var(--duration) var(--ease-out),color var(--duration) var(--ease-out),border-color var(--duration) var(--ease-out),transform var(--duration-fast) var(--ease-out)}.apps-icon:hover,.menu-toggle:hover{background:var(--primary-lighter);color:var(--primary-darker)}.apps-icon:active,.menu-toggle:active{transform:scale(.94)}.apps-icon.active{background:var(--primary-lighter);border-color:var(--border-color);color:var(--primary-darker)}.apps-icon .material-icons,.menu-toggle .material-icons{font-size:1.4rem;transition:transform var(--duration-slow) var(--ease-spring)}.apps-icon.active .material-icons{transform:rotate(90deg)}.user-menu-wrapper{position:relative;display:flex;align-items:center}.user-avatar-btn{background:transparent;border:1px solid transparent;cursor:pointer;display:flex;align-items:center;gap:2px;position:relative;border-radius:var(--border-radius-pill);padding:3px 6px 3px 3px;transition:background-color var(--duration) var(--ease-out),border-color var(--duration) var(--ease-out)}.user-avatar-btn:hover{background:var(--primary-lighter)}.user-avatar-btn.active{background:var(--primary-lighter);border-color:var(--border-color)}.chevron-icon{font-size:1.25rem!important;color:var(--text-medium);transition:transform var(--duration) var(--ease-out),color var(--duration) var(--ease-out);line-height:1;display:flex;align-items:center}.user-avatar-btn:hover .chevron-icon,.user-avatar-btn.active .chevron-icon{color:var(--primary-darker)}.user-avatar-btn.active .chevron-icon{transform:rotate(180deg)}.nav-avatar{width:36px;height:36px;border-radius:50%;object-fit:cover;background:var(--bg-light);display:block;box-shadow:0 0 0 2px var(--bg-main),0 0 0 4px rgba(var(--primary-rgb),.55);transition:box-shadow var(--duration) var(--ease-out)}.user-avatar-btn:hover .nav-avatar,.user-avatar-btn.active .nav-avatar{box-shadow:0 0 0 2px var(--bg-main),0 0 0 4px rgb(var(--accent-rgb))}.user-dropdown-menu,.apps-menu{position:absolute;top:calc(100% + 10px);right:0;background:#fffffff5;backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border-radius:16px;box-shadow:var(--shadow-xl);border:1px solid var(--border-subtle);overflow:hidden;z-index:1001;visibility:hidden;opacity:0;transform:translateY(-6px) scale(.97);transform-origin:top right;transition:opacity var(--duration) var(--ease-out),transform var(--duration) var(--ease-out),visibility 0s linear var(--duration);pointer-events:none}.user-dropdown-menu.active,.apps-menu.active{visibility:visible;opacity:1;transform:translateY(0) scale(1);pointer-events:auto;transition:opacity var(--duration) var(--ease-out),transform var(--duration-slow) var(--ease-spring),visibility 0s}.user-dropdown-menu{width:288px;max-width:calc(100vw - 2rem)}.user-dropdown-header{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md);background:var(--gradient-soft);position:relative}.dropdown-avatar{width:46px;height:46px;border-radius:50%;object-fit:cover;background:var(--bg-light);flex-shrink:0;box-shadow:0 0 0 2px var(--bg-main),0 0 0 4px rgba(var(--primary-rgb),.5)}.dropdown-user-info{flex:1;min-width:0}.dropdown-user-name{font-weight:600;color:var(--text-dark);font-size:.9375rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dropdown-user-email{font-size:.8125rem;color:var(--text-medium);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:1px}.user-dropdown-divider{height:1px;background:var(--border-subtle)}.user-dropdown-items{padding:6px}.dropdown-item{width:100%;display:flex;align-items:center;gap:var(--spacing-sm);padding:.6rem .75rem;background:transparent;border:none;border-radius:10px;color:var(--text-dark);font-size:.9rem;font-weight:500;cursor:pointer;text-align:left;transition:background-color var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out),transform var(--duration) var(--ease-out);opacity:0;transform:translate(-6px)}.user-dropdown-menu.active .dropdown-item{animation:dropdownItemSlideIn .35s var(--ease-out) forwards}.user-dropdown-menu.active .dropdown-item:nth-child(1){animation-delay:.04s}.user-dropdown-menu.active .dropdown-item:nth-child(2){animation-delay:.08s}.user-dropdown-menu.active .dropdown-item:nth-child(3){animation-delay:.12s}@keyframes dropdownItemSlideIn{to{opacity:1;transform:translate(0)}}.dropdown-item:hover{background:var(--primary-lighter);color:var(--primary-darker)}.dropdown-item .material-icons{font-size:1.2rem;color:var(--text-light);transition:color var(--duration-fast) var(--ease-out),transform var(--duration) var(--ease-spring)}.dropdown-item:hover .material-icons{color:var(--primary-darker);transform:scale(1.12)}.dropdown-item:last-child{color:var(--error)}.dropdown-item:last-child:hover{background:var(--error-lighter);color:var(--error)}.dropdown-item:last-child .material-icons{color:var(--error)}.apps-wrapper{position:relative}.apps-menu{width:340px;padding:var(--spacing-md)}.apps-menu-header{display:flex;align-items:center;gap:var(--spacing-xs);padding:0 4px var(--spacing-sm);margin-bottom:var(--spacing-xs);border-bottom:1px solid var(--border-subtle);color:var(--text-medium);font-weight:600;font-size:.75rem;text-transform:uppercase;letter-spacing:.08em}.apps-menu-header .material-icons{font-size:1.1rem;color:var(--primary)}.apps-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;padding-top:4px;max-height:min(420px,70vh);overflow-y:auto}.app-link{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.4rem;font-size:.72rem;padding:.7rem .25rem;color:var(--text-medium);text-decoration:none;border-radius:12px;border:1px solid transparent;background:transparent;position:relative;opacity:0;transform:translateY(6px);transition:background-color var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out)}.apps-menu.active .app-link{animation:appItemFadeIn .4s var(--ease-out) forwards}.apps-menu.active .app-link:nth-child(1){animation-delay:.02s}.apps-menu.active .app-link:nth-child(2){animation-delay:.04s}.apps-menu.active .app-link:nth-child(3){animation-delay:.06s}.apps-menu.active .app-link:nth-child(4){animation-delay:.08s}.apps-menu.active .app-link:nth-child(5){animation-delay:.1s}.apps-menu.active .app-link:nth-child(6){animation-delay:.12s}.apps-menu.active .app-link:nth-child(7){animation-delay:.14s}.apps-menu.active .app-link:nth-child(8){animation-delay:.16s}.apps-menu.active .app-link:nth-child(9){animation-delay:.18s}.apps-menu.active .app-link:nth-child(10){animation-delay:.2s}.apps-menu.active .app-link:nth-child(11){animation-delay:.22s}.apps-menu.active .app-link:nth-child(12){animation-delay:.24s}.apps-menu.active .app-link:nth-child(n+13){animation-delay:.26s}@keyframes appItemFadeIn{to{opacity:1;transform:translateY(0)}}.app-link i{width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:12px;font-size:1.1rem;color:var(--primary-dark);background:var(--primary-lighter);border:1px solid var(--border-subtle);transition:transform var(--duration-slow) var(--ease-spring),background var(--duration) var(--ease-out),color var(--duration) var(--ease-out),box-shadow var(--duration) var(--ease-out)}.app-link:hover{background:var(--bg-light);border-color:var(--border-subtle);color:var(--text-dark)}.app-link:hover i{background:var(--gradient-primary);color:#fff;border-color:transparent;transform:translateY(-2px) scale(1.06);box-shadow:0 6px 16px -4px rgba(var(--primary-rgb),.6)}.app-link span{font-weight:500;text-align:center;line-height:1.2}.sidebar{position:fixed;left:0;top:var(--nav-height);bottom:0;width:var(--sidebar-width);background:var(--bg-main);border-right:1px solid var(--border-subtle);overflow-y:auto;overflow-x:hidden;transition:width var(--duration-slow) var(--ease-out),transform var(--duration-slow) var(--ease-out);z-index:1000}.sidebar.collapsed{width:var(--sidebar-collapsed-width)}.sidebar-content{padding:var(--spacing-md) var(--spacing-sm);display:flex;flex-direction:column;height:100%}.sidebar-section-label{font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:var(--text-light);padding:0 .85rem;margin-bottom:.5rem;white-space:nowrap;transition:opacity var(--duration) var(--ease-out)}.sidebar.collapsed .sidebar-section-label{opacity:0}.sidebar-menu{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:2px}.menu-item{position:relative;animation:menuItemIn .5s var(--ease-out) backwards;animation-delay:calc(var(--i, 0) * 30ms + 80ms)}@keyframes menuItemIn{0%{opacity:0;transform:translate(-8px)}to{opacity:1;transform:translate(0)}}.menu-item a{display:flex;align-items:center;gap:.8rem;padding:.6rem .85rem;color:var(--text-medium);text-decoration:none;font-size:.9rem;font-weight:500;border-radius:10px;transition:background-color var(--duration) var(--ease-out),color var(--duration) var(--ease-out),padding var(--duration-slow) var(--ease-out);white-space:nowrap;position:relative;overflow:hidden}.menu-item a:before{content:"";position:absolute;left:0;top:50%;width:3px;height:0;border-radius:0 3px 3px 0;background:var(--gradient-accent);transform:translateY(-50%);transition:height var(--duration-slow) var(--ease-spring)}.sidebar.collapsed .menu-item a{padding:.6rem;justify-content:center;gap:0}.menu-item a:hover{background:var(--bg-light);color:var(--text-dark)}.menu-item a:hover .material-icons{transform:scale(1.1)}.menu-item.active a{background:linear-gradient(90deg,rgba(var(--primary-rgb),.18),rgba(var(--accent-rgb),.08));color:var(--primary-darker);font-weight:600}.menu-item.active a:before{height:60%}.menu-item .material-icons{font-size:1.25rem;flex-shrink:0;transition:transform var(--duration) var(--ease-spring),color var(--duration) var(--ease-out)}.menu-item.active .material-icons{color:rgb(var(--accent-rgb))}.menu-label{transition:opacity var(--duration) var(--ease-out) .08s}.sidebar.collapsed .menu-label{opacity:0;width:0;overflow:hidden;transition:opacity var(--duration-fast) var(--ease-out)}.sidebar.collapsed .menu-item:after{content:attr(data-tooltip);position:fixed;left:calc(var(--sidebar-collapsed-width) + 10px);top:var(--tooltip-top, 50%);transform:translate(-4px,-50%);background:var(--text-dark);color:#fff;padding:6px 10px;border-radius:8px;font-size:.8125rem;font-weight:500;white-space:nowrap;z-index:10000;pointer-events:none;box-shadow:var(--shadow-lg);opacity:0;transition:opacity var(--duration-fast) var(--ease-out),transform var(--duration) var(--ease-out)}.sidebar.collapsed .menu-item:hover:after{opacity:1;transform:translateY(-50%)}.sidebar-footer{display:flex;justify-content:flex-end;padding-top:var(--spacing-sm);margin-top:auto;border-top:1px solid var(--border-subtle)}.sidebar.collapsed .sidebar-footer{justify-content:center}.sidebar-toggle-btn{width:100%;display:flex;align-items:center;justify-content:flex-start;gap:.8rem;background:transparent;border:none;border-radius:10px;color:var(--text-light);cursor:pointer;transition:background-color var(--duration) var(--ease-out),color var(--duration) var(--ease-out);padding:.6rem .85rem;font-size:.85rem;font-weight:500;white-space:nowrap}.sidebar.collapsed .sidebar-toggle-btn{justify-content:center;padding:.6rem;gap:0}.sidebar-toggle-btn:hover{background:var(--bg-light);color:var(--text-dark)}.sidebar-toggle-btn .material-icons{font-size:1.25rem;flex-shrink:0}.main-content{margin-left:var(--sidebar-width);margin-top:var(--nav-height);min-height:calc(100vh - var(--nav-height));min-height:calc(100dvh - var(--nav-height));background:radial-gradient(1200px 400px at 85% -120px,rgba(var(--accent-rgb),.08),transparent 70%),radial-gradient(900px 360px at 0% -80px,rgba(var(--primary-rgb),.12),transparent 70%),var(--bg-light);transition:margin-left var(--duration-slow) var(--ease-out);min-width:0}.main-content.sidebar-collapsed{margin-left:var(--sidebar-collapsed-width)}.page-transition{animation:pageEnter .5s var(--ease-out) backwards}@keyframes pageEnter{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.sidebar-backdrop,.menu-toggle{display:none}@media(max-width:768px){:root{--nav-height: 56px}.menu-toggle{display:flex}.sidebar-backdrop{display:block;position:fixed;inset:var(--nav-height) 0 0 0;background:#1e1e3266;backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);z-index:999;animation:fadeIn var(--duration) var(--ease-out)}.sidebar,.sidebar.collapsed{width:260px;max-width:85vw;transform:translate(-100%);z-index:1001;box-shadow:none;transition:transform var(--duration-slow) var(--ease-out),box-shadow var(--duration-slow) var(--ease-out)}.sidebar.active{transform:translate(0);box-shadow:var(--shadow-xl)}.main-content,.main-content.sidebar-collapsed{margin-left:0}.sidebar-footer{display:none}.sidebar.collapsed .sidebar-section-label{opacity:1}.sidebar.collapsed .menu-label{opacity:1;width:auto;overflow:visible}.sidebar.collapsed .menu-item a{justify-content:flex-start;gap:.8rem;padding:.7rem .85rem}.menu-item a{padding:.7rem .85rem}.sidebar.collapsed .menu-item:after{display:none}.nav-bar{padding:0 var(--spacing-sm);z-index:1002}.brand-icon{width:32px;height:32px;font-size:1.1rem!important}.nav-brand{font-size:1rem}.user-name{display:none}.nav-right{gap:var(--spacing-sm)}.apps-menu{width:calc(100vw - 1.5rem);max-width:340px;right:-3rem;z-index:1003}.user-menu-wrapper{position:relative;z-index:1003}.nav-avatar{width:32px;height:32px}.user-dropdown-menu{width:calc(100vw - 1.5rem);max-width:288px;z-index:1003}}@media(max-width:380px){.brand-text{display:none}}.loading-overlay{position:fixed;inset:0;background:#f6f6fab3;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:flex;flex-direction:column;gap:var(--spacing-md);justify-content:center;align-items:center;z-index:2000;animation:fadeIn var(--duration) var(--ease-out)}.loader{width:44px;height:44px;border-radius:50%;background:conic-gradient(from 0deg,transparent 0deg,rgb(var(--accent-rgb)) 300deg,transparent 360deg);-webkit-mask:radial-gradient(farthest-side,transparent calc(100% - 4px),#000 calc(100% - 3px));mask:radial-gradient(farthest-side,transparent calc(100% - 4px),#000 calc(100% - 3px));animation:spin .9s linear infinite}.loader-text{font-size:.8125rem;font-weight:500;color:var(--text-medium);letter-spacing:.02em}.section-portal{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column}.modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:var(--bg-main);border-radius:var(--border-radius-lg);border:1px solid var(--border-subtle);box-shadow:var(--shadow-xl);width:90%;max-width:600px;max-height:90vh;max-height:90dvh;z-index:1050;overflow:hidden}.modal.modal-guides{max-width:90%}.modal.show{animation:modalIn .4s var(--ease-spring) backwards}@keyframes modalIn{0%{opacity:0;transform:translate(-50%,calc(-50% + 16px)) scale(.96)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.modal-backdrop{position:fixed;inset:0;background:#1c1c3073;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);z-index:1040}.modal-backdrop.show{animation:fadeIn var(--duration) var(--ease-out) backwards}.modal-content{display:flex;flex-direction:column;max-height:90vh;max-height:90dvh}.modal-header{display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-md);padding:1.25rem 1.5rem;border-bottom:1px solid var(--border-subtle);background:linear-gradient(180deg,rgba(var(--primary-rgb),.06),transparent)}.modal-header h3{margin:0;font-size:1.15rem;font-weight:700;color:var(--text-dark)}.modal-body{padding:1.5rem;overflow-y:auto;color:var(--text-dark)}.modal-body p+p{margin-top:.75rem}.modal-view-report{overflow:hidden;display:flex;flex-direction:column;height:90vh;max-height:90vh}.modal-view-report .modal-content{min-width:0;overflow:hidden;display:flex;flex-direction:column;flex:1;max-height:100%}.modal-view-report .modal-body{overflow:auto;flex:1 1 0;min-height:0;min-width:0}.modal-view-report .modal-body p{overflow-wrap:break-word;word-wrap:break-word;word-break:break-word;max-width:100%}.modal-body .form-group:has(.attendance-container){background:var(--bg-main);border-radius:var(--border-radius);padding:var(--spacing-md)}.modal-body .form-group:has(.attendance-container)>label{display:block;margin-bottom:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);background:var(--error-lighter);border-left:3px solid var(--error);border-radius:var(--border-radius-sm);font-size:.8125rem;line-height:1.4}.modal-footer{padding:1rem 1.5rem;border-top:1px solid var(--border-subtle);background:var(--bg-light);display:flex;justify-content:flex-end;gap:var(--spacing-sm)}.btn-close{width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;background:transparent;border:1px solid transparent;border-radius:10px;color:var(--text-medium);cursor:pointer;padding:0;transition:background-color var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out),transform var(--duration) var(--ease-spring)}.btn-close:hover{background:var(--primary-lighter);color:var(--text-dark);transform:rotate(90deg)}.btn-close .material-icons{font-size:1.25rem}.member-management{display:flex;flex-direction:column;gap:var(--spacing-lg)}.search-bar{width:100%;display:flex;align-items:center;background:var(--bg-main);border:1px solid var(--border-color);border-radius:var(--border-radius-sm);padding:.6rem var(--spacing-md);gap:var(--spacing-sm);transition:border-color var(--duration) var(--ease-out),box-shadow var(--duration) var(--ease-out);box-shadow:var(--shadow-xs)}.search-bar:focus-within{border-color:rgb(var(--accent-rgb));box-shadow:var(--ring)}.modal-body input:not(.search-bar input):not([type=checkbox]):not([type=radio]){width:100%;padding:.65rem .85rem;border:1px solid var(--border-color);border-radius:var(--border-radius-sm);font-size:.95rem}.member-list-item{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md);border:1px solid var(--border-subtle);border-radius:var(--border-radius-sm);margin-bottom:var(--spacing-sm);transition:border-color var(--duration) var(--ease-out),background-color var(--duration) var(--ease-out)}.member-list-item:hover{border-color:var(--border-color);background:var(--bg-light)}.member-avatar-small{width:40px;height:40px;border-radius:50%;object-fit:cover}.member-actions{display:flex;gap:var(--spacing-sm)}.member-actions select{padding:10px 40px 10px 10px}.member-role-select{width:100%;border:1px solid var(--border-color);padding:4px 12px;border-radius:8px;font-size:1rem;outline:none}.form-grid{display:grid;gap:var(--spacing-md)}.form-group{display:flex;flex-direction:column;gap:var(--spacing-xs)}.form-group label{color:var(--text-dark);font-weight:500;font-size:.875rem}.form-group input,.form-group select,.form-group textarea{padding:.65rem .85rem;border:1px solid var(--border-color);border-radius:var(--border-radius-sm);font-size:.95rem;color:var(--text-dark);background-color:var(--bg-main);transition:border-color var(--duration) var(--ease-out),box-shadow var(--duration) var(--ease-out)}.form-group input:hover,.form-group select:hover,.form-group textarea:hover{border-color:var(--border-strong)}.form-group textarea{resize:vertical}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:rgb(var(--accent-rgb));box-shadow:var(--ring)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md)}@media(max-width:768px){.form-row{grid-template-columns:1fr}}.form-error{color:var(--error);font-size:.875rem;margin-top:var(--spacing-xs)}.modal-scroll{display:flex;flex-direction:column;gap:var(--spacing-md)}.modal-scroll h4{font-size:1.25rem;text-align:center;border:1px solid var(--border-color)}@media(max-width:768px){.modal{width:95%;max-width:95%;max-height:95vh}.modal-body{padding:var(--spacing-md);max-height:calc(95vh - 120px);overflow-y:auto}.modal-header{padding:var(--spacing-md)}.modal-header h3{font-size:1.125rem}.modal-footer{padding:var(--spacing-md);flex-wrap:wrap;gap:var(--spacing-sm)}.modal-footer .btn{flex:1;min-width:calc(50% - var(--spacing-sm))}}:root{--primary: rgb(157, 157, 189);--primary-dark: rgb(124, 124, 163);--primary-darker: rgb(98, 98, 140);--primary-light: rgb(184, 184, 212);--primary-lighter: rgb(240, 240, 247);--primary-rgb: 157, 157, 189;--accent: rgb(140, 140, 254);--accent-rgb: 140, 140, 254;--gradient-primary: linear-gradient(135deg, rgb(168, 168, 204) 0%, rgb(124, 124, 163) 100%);--gradient-accent: linear-gradient(135deg, rgb(157, 157, 189) 0%, rgb(140, 140, 254) 100%);--gradient-soft: linear-gradient(135deg, rgba(var(--primary-rgb), .12) 0%, rgba(var(--accent-rgb), .08) 100%);--gradient-surface: linear-gradient(180deg, #ffffff 0%, #fbfbfe 100%);--text-dark: rgb(36, 36, 56);--text-medium: rgb(98, 98, 130);--text-light: rgb(150, 150, 182);--bg-main: #ffffff;--bg-light: #f6f6fa;--bg-elevated: #ffffff;--bg-overlay: rgba(var(--primary-rgb), .1);--bg-glass: rgba(255, 255, 255, .72);--border-color: rgba(var(--primary-rgb), .22);--border-subtle: rgba(var(--primary-rgb), .14);--border-strong: rgba(var(--primary-rgb), .4);--shadow-color: rgba(var(--primary-rgb), .1);--shadow-hover: rgba(var(--primary-rgb), .18);--shadow-xs: 0 1px 2px rgba(36, 36, 72, .04);--shadow-sm: 0 1px 2px rgba(36, 36, 72, .04), 0 2px 6px rgba(36, 36, 72, .04);--shadow-md: 0 2px 4px rgba(36, 36, 72, .04), 0 8px 20px -4px rgba(60, 60, 110, .1);--shadow-lg: 0 4px 8px rgba(36, 36, 72, .04), 0 18px 40px -8px rgba(60, 60, 110, .18);--shadow-xl: 0 8px 16px rgba(36, 36, 72, .06), 0 32px 64px -12px rgba(60, 60, 110, .28);--shadow-glow: 0 0 0 1px rgba(var(--primary-rgb), .25), 0 8px 24px -6px rgba(var(--accent-rgb), .35);--ring: 0 0 0 3px rgba(var(--accent-rgb), .28);--spacing-xs: .5rem;--spacing-sm: .75rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--success: rgb(72, 170, 110);--success-lighter: rgba(72, 170, 110, .1);--warning: rgb(224, 160, 20);--warning-lighter: rgba(224, 160, 20, .1);--error: rgb(226, 72, 72);--error-lighter: rgba(226, 72, 72, .08);--anchor-color: rgb(var(--accent-rgb));--border-radius: 14px;--border-radius-sm: 10px;--border-radius-lg: 20px;--border-radius-pill: 999px;--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-display: "Plus Jakarta Sans", "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--ease-out: cubic-bezier(.22, 1, .36, 1);--ease-in-out: cubic-bezier(.65, 0, .35, 1);--ease-spring: cubic-bezier(.34, 1.56, .64, 1);--duration-fast: .15s;--duration: .25s;--duration-slow: .45s;--nav-height: 64px;--sidebar-width: 240px;--sidebar-collapsed-width: 72px;color-scheme:light}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:smooth}body{font-family:var(--font-sans);font-feature-settings:"cv11","ss01","ss03";line-height:1.55;color:var(--text-dark);background:var(--bg-light);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);letter-spacing:-.02em;line-height:1.25;color:var(--text-dark)}button,input,select,textarea{font-family:inherit}img,svg,video{max-width:100%}a{color:var(--anchor-color);text-underline-offset:3px}::selection{background:rgba(var(--accent-rgb),.22);color:var(--text-dark)}:focus{outline:none}:focus-visible{outline:2px solid rgb(var(--accent-rgb));outline-offset:2px;border-radius:6px}.hidden{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cpath fill='%23626282' d='M7 10l5 5 5-5z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 8px center}*{scrollbar-width:thin;scrollbar-color:rgba(var(--primary-rgb),.35) transparent}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:rgba(var(--primary-rgb),.3);border-radius:10px;border:3px solid transparent;background-clip:padding-box}::-webkit-scrollbar-thumb:hover{background:rgba(var(--primary-rgb),.5);background-clip:padding-box}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes fadeUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.dashboard-container{padding:var(--spacing-xl);max-width:1440px;margin:0 auto}@media(max-width:768px){.dashboard-container{padding:var(--spacing-md)}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;padding:.55rem 1.05rem;font-size:.9rem;font-weight:600;letter-spacing:-.005em;border-radius:var(--border-radius-sm);border:1px solid transparent;cursor:pointer;transition:background-color var(--duration) var(--ease-out),border-color var(--duration) var(--ease-out),color var(--duration) var(--ease-out),box-shadow var(--duration) var(--ease-out),transform var(--duration) var(--ease-out);text-decoration:none;white-space:nowrap;background:transparent;color:var(--text-dark);font-family:inherit;line-height:1.4;position:relative;isolation:isolate;-webkit-tap-highlight-color:transparent}.btn:active:not(:disabled){transform:translateY(0) scale(.97);transition-duration:80ms}.btn:focus-visible{outline:none;box-shadow:var(--ring)}.btn:disabled{opacity:.55;cursor:not-allowed;pointer-events:none}.btn .material-icons{font-size:1.125rem;line-height:1}.btn-primary{background:var(--gradient-primary);color:#fff;border-color:transparent;box-shadow:inset 0 1px #ffffff38,0 1px 2px #3c3c6e2e,0 4px 12px -2px rgba(var(--primary-rgb),.45)}.btn-primary:after{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(135deg,rgba(255,255,255,.18),transparent 60%);opacity:0;transition:opacity var(--duration) var(--ease-out);z-index:-1}.btn-primary:hover:not(:disabled){color:#fff;transform:translateY(-1px);box-shadow:inset 0 1px #ffffff38,0 2px 4px #3c3c6e2e,0 10px 22px -4px rgba(var(--primary-rgb),.6)}.btn-primary:hover:not(:disabled):after{opacity:1}.btn-outline{background:var(--bg-main);color:var(--text-dark);border-color:var(--border-color);box-shadow:var(--shadow-xs)}.btn-outline:hover:not(:disabled):not(.filter-buttons button){background:var(--bg-main);border-color:var(--primary);color:var(--primary-darker);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.btn-secondary{background:var(--bg-light);color:var(--text-dark);border-color:var(--border-subtle)}.btn-secondary:hover:not(:disabled){background:var(--primary-lighter);border-color:var(--primary-light);color:var(--primary-darker);transform:translateY(-1px)}.btn-danger{background:linear-gradient(135deg,#ec5c5c,#d23a3a);color:#fff;border-color:transparent;box-shadow:inset 0 1px #fff3,0 4px 12px -2px #e2484859}.btn-danger:hover:not(:disabled){background:linear-gradient(135deg,#e24e4e,#c42e2e);border-color:transparent;box-shadow:inset 0 1px #fff3,0 8px 20px -4px #e2484880;transform:translateY(-1px)}.btn-success{background:linear-gradient(135deg,#58ba7c,#3c9860);color:#fff;border-color:transparent;box-shadow:inset 0 1px #fff3,0 4px 12px -2px #48aa6e59}.btn-success:hover:not(:disabled){color:#fff;background:linear-gradient(135deg,#4cb070,#348c56);border-color:transparent;box-shadow:inset 0 1px #fff3,0 8px 20px -4px #48aa6e80;transform:translateY(-1px)}.btn-sm{padding:.35rem .8rem;font-size:.8125rem;border-radius:8px}.btn-sm .material-icons{font-size:17px}.btn-lg{padding:.85rem 1.5rem;font-size:1rem;border-radius:12px}.btn-lg .material-icons{font-size:1.25rem}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;animation-delay:0ms!important;transition-duration:.01ms!important;transition-delay:0ms!important}}.section-login{position:relative;min-height:100vh;min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:var(--spacing-lg);background:var(--bg-light);overflow:hidden;isolation:isolate}.login-backdrop{position:absolute;inset:0;z-index:-1;overflow:hidden}.login-orb{position:absolute;border-radius:50%;filter:blur(70px);opacity:.55;will-change:transform}.login-orb-1{width:520px;height:520px;top:-160px;left:-120px;background:rgba(var(--primary-rgb),.75);animation:orbFloat1 18s var(--ease-in-out) infinite alternate}.login-orb-2{width:460px;height:460px;bottom:-180px;right:-100px;background:rgba(var(--accent-rgb),.55);animation:orbFloat2 22s var(--ease-in-out) infinite alternate}.login-orb-3{width:300px;height:300px;top:40%;left:55%;background:#d6bef099;animation:orbFloat3 16s var(--ease-in-out) infinite alternate}@keyframes orbFloat1{to{transform:translate(120px,80px) scale(1.1)}}@keyframes orbFloat2{to{transform:translate(-140px,-60px) scale(1.15)}}@keyframes orbFloat3{to{transform:translate(-180px,60px) scale(.9)}}.login-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(var(--primary-rgb),.12) 1px,transparent 1px),linear-gradient(90deg,rgba(var(--primary-rgb),.12) 1px,transparent 1px);background-size:44px 44px;-webkit-mask-image:radial-gradient(ellipse 70% 60% at 50% 45%,#000 20%,transparent 75%);mask-image:radial-gradient(ellipse 70% 60% at 50% 45%,#000 20%,transparent 75%)}.login-container{position:relative;width:100%;max-width:440px;padding:2.75rem 2.5rem 2rem;text-align:center;background:#ffffffc7;backdrop-filter:blur(24px) saturate(180%);-webkit-backdrop-filter:blur(24px) saturate(180%);border:1px solid rgba(255,255,255,.9);border-radius:28px;box-shadow:0 0 0 1px rgba(var(--primary-rgb),.12),var(--shadow-xl);animation:loginCardIn .8s var(--ease-out) backwards}.login-container:before{content:"";position:absolute;inset:-1px;border-radius:inherit;padding:1px;background:linear-gradient(140deg,rgba(var(--accent-rgb),.55),transparent 40%,transparent 60%,rgba(var(--primary-rgb),.6));-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}@keyframes loginCardIn{0%{opacity:0;transform:translateY(24px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.login-mark{width:64px;height:64px;margin:0 auto 1.5rem;display:grid;place-items:center;border-radius:18px;background:var(--gradient-primary);color:#fff;box-shadow:inset 0 1px #ffffff4d,0 12px 28px -8px rgba(var(--primary-rgb),.8);animation:markIn .9s var(--ease-spring) .15s backwards}.login-mark .material-icons{font-size:2rem;animation:spin 24s linear infinite}@keyframes markIn{0%{opacity:0;transform:scale(.5) rotate(-20deg)}to{opacity:1;transform:scale(1) rotate(0)}}.login-header{margin-bottom:2rem;animation:fadeUp .7s var(--ease-out) .25s backwards}.login-eyebrow{display:inline-block;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.14em;color:var(--primary-dark);padding:.3rem .7rem;border-radius:var(--border-radius-pill);background:rgba(var(--primary-rgb),.12);margin-bottom:1rem}.login-header h1{color:var(--text-dark);font-size:clamp(1.6rem,4vw,2rem);font-weight:800;letter-spacing:-.03em;line-height:1.15;margin-bottom:.6rem}.login-gradient-text{background:linear-gradient(120deg,var(--primary-darker),rgb(var(--accent-rgb)),var(--primary-dark));background-size:200% auto;-webkit-background-clip:text;background-clip:text;color:transparent;animation:gradientShift 6s ease-in-out infinite alternate}@keyframes gradientShift{0%{background-position:0% center}to{background-position:100% center}}.login-header p{color:var(--text-medium);font-size:.95rem;margin:0}.btn-apply{position:relative;width:100%;padding:.95rem 1.25rem;background:var(--gradient-primary);color:#fff;border:none;border-radius:14px;font-size:1rem;font-weight:600;letter-spacing:-.01em;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.65rem;overflow:hidden;isolation:isolate;box-shadow:inset 0 1px #ffffff40,0 2px 4px #3c3c6e26,0 12px 28px -8px rgba(var(--primary-rgb),.85);transition:transform var(--duration) var(--ease-out),box-shadow var(--duration) var(--ease-out),opacity var(--duration) var(--ease-out);animation:fadeUp .7s var(--ease-out) .35s backwards}.btn-apply:after{content:"";position:absolute;top:0;left:-60%;width:50%;height:100%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.35),transparent);transform:skew(-20deg);z-index:-1;transition:left .7s var(--ease-out)}.btn-apply:hover:not(:disabled){transform:translateY(-2px);box-shadow:inset 0 1px #ffffff40,0 4px 8px #3c3c6e26,0 18px 36px -10px rgba(var(--accent-rgb),.75)}.btn-apply:hover:not(:disabled):after{left:120%}.btn-apply:active:not(:disabled){transform:translateY(0) scale(.98)}.btn-apply:focus-visible{outline:none;box-shadow:var(--ring),0 12px 28px -8px rgba(var(--primary-rgb),.85)}.btn-apply:disabled{opacity:.6;cursor:not-allowed}.btn-apply i{font-size:1rem}.btn-apply-arrow{font-size:1.15rem!important;transition:transform var(--duration) var(--ease-spring)}.btn-apply:hover:not(:disabled) .btn-apply-arrow{transform:translate(4px)}.login-features{list-style:none;display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem;margin:1.75rem 0 0;padding:1.5rem 0 0;border-top:1px solid var(--border-subtle)}.login-features li{display:inline-flex;align-items:center;gap:.35rem;padding:.35rem .7rem;font-size:.78rem;font-weight:500;color:var(--text-medium);background:#ffffffb3;border:1px solid var(--border-subtle);border-radius:var(--border-radius-pill);animation:fadeUp .6s var(--ease-out) backwards;animation-delay:calc(.5s + var(--i, 0) * 80ms)}.login-features .material-icons{font-size:.95rem;color:var(--primary-dark)}.login-container small{display:block;text-align:center;color:var(--text-light);font-size:.78rem;margin-top:1.25rem;animation:fadeIn .6s var(--ease-out) .8s backwards}.login-container small a{color:var(--primary-darker);font-weight:500;text-decoration:none;background-image:linear-gradient(currentColor,currentColor);background-size:0% 1px;background-position:0 100%;background-repeat:no-repeat;transition:background-size var(--duration) var(--ease-out)}.login-container small a:hover{background-size:100% 1px}.btn-login{width:100%;padding:var(--spacing-md);background:var(--bg-main);border:1px solid var(--border-color);border-radius:12px;display:flex;align-items:center;justify-content:center;gap:var(--spacing-md);font-size:1rem;color:var(--text-dark);cursor:pointer;transition:background-color var(--duration) var(--ease-out),border-color var(--duration) var(--ease-out)}.btn-login:hover{background:var(--bg-light);border-color:var(--primary)}.btn-login img{width:24px;height:24px}@media(max-width:480px){.login-container{padding:2rem 1.25rem 1.5rem;border-radius:22px}.login-orb{filter:blur(50px)}}.overview-container{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:var(--spacing-md);margin-bottom:var(--spacing-xl)}.stat-card{position:relative;background:var(--gradient-surface);border-radius:var(--border-radius-lg);border:1px solid var(--border-subtle);padding:1.35rem 1.5rem;box-shadow:var(--shadow-sm);overflow:hidden;isolation:isolate;transition:transform var(--duration-slow) var(--ease-out),box-shadow var(--duration-slow) var(--ease-out),border-color var(--duration) var(--ease-out)}.stat-card:before{content:"";position:absolute;top:-60px;right:-60px;width:160px;height:160px;border-radius:50%;background:radial-gradient(circle,rgba(var(--accent-rgb),.16),transparent 70%);z-index:-1;transition:transform var(--duration-slow) var(--ease-out),opacity var(--duration-slow) var(--ease-out);opacity:.7}.stat-card:after{content:"";position:absolute;top:0;left:1.5rem;right:1.5rem;height:1px;background:linear-gradient(90deg,transparent,rgba(var(--accent-rgb),.5),transparent);opacity:0;transition:opacity var(--duration-slow) var(--ease-out)}.stat-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg);border-color:var(--border-color)}.stat-card:hover:before{transform:scale(1.35);opacity:1}.stat-card:hover:after{opacity:1}.stat-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem}.stat-header .stat-icon{width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;background:var(--gradient-primary);color:#fff;border-radius:12px;font-size:1.25rem!important;box-shadow:inset 0 1px #ffffff40,0 6px 14px -4px rgba(var(--primary-rgb),.7);transition:transform var(--duration-slow) var(--ease-spring)}.stat-card:hover .stat-icon{transform:rotate(-6deg) scale(1.08)}.stat-title{color:var(--text-medium);font-size:.8125rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em}.stat-value{color:var(--text-dark);font-family:var(--font-display);font-size:1.6rem;font-weight:700;letter-spacing:-.025em;line-height:1.2;margin-bottom:.25rem;overflow-wrap:anywhere}.stat-info{color:var(--text-medium);font-size:.84rem;margin-top:.35rem}.stat-change{display:flex;align-items:center;gap:var(--spacing-xs);font-size:.875rem;font-weight:500}.stat-change.positive{color:#10b981}.stat-change.negative{color:#ef4444}.stat-change .material-icons{font-size:1rem}.section{background:var(--bg-main);border-radius:var(--border-radius-lg);border:1px solid var(--border-subtle);box-shadow:var(--shadow-sm);padding:1.5rem;margin-bottom:var(--spacing-lg)}.section-header{display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-md);flex-wrap:wrap;margin-bottom:var(--spacing-lg)}.section-header h3{display:flex;align-items:center;gap:.6rem;color:var(--text-dark);font-size:1.125rem;font-weight:700}.section>.section-header h3:before{content:"";width:4px;height:1.1em;border-radius:4px;background:var(--gradient-accent)}.activity-list{display:flex;flex-direction:column;gap:var(--spacing-md)}.activity-item{display:flex;align-items:flex-start;gap:var(--spacing-md);padding:var(--spacing-md) 0;border-bottom:1px solid var(--border-color)}.activity-item:last-child{border-bottom:none}.activity-icon{background:var(--primary-lighter);color:var(--primary);padding:var(--spacing-sm);border-radius:8px}.activity-title{color:var(--text-dark);font-weight:500;margin-bottom:var(--spacing-xs)}.activity-time{color:var(--text-medium);font-size:.875rem}.actions-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-md)}.action-card{background:var(--bg-main);border:1px solid var(--border-color);border-radius:12px;padding:var(--spacing-lg);text-align:center;cursor:pointer;transition:all .2s ease}.action-card:hover{transform:translateY(-2px);box-shadow:0 4px 8px var(--shadow-hover);border-color:var(--primary)}.action-card .material-icons{font-size:2rem;color:var(--primary);margin-bottom:var(--spacing-sm)}.action-card span{color:var(--text-dark);font-weight:500}@media(max-width:768px){.overview-container{grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr))}.stat-card,.section{padding:var(--spacing-md)}.actions-grid{grid-template-columns:repeat(2,1fr)}.action-card{padding:var(--spacing-md)}}@media(max-width:480px){.actions-grid{grid-template-columns:1fr}.stat-value{font-size:1.5rem}.activity-item{flex-direction:column}.activity-icon{margin-bottom:var(--spacing-xs)}}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-xl)}.page-header h2{font-size:1.5rem;color:var(--text-dark);margin-bottom:var(--spacing-xs)}.text-medium{color:var(--text-medium)}@media(max-width:768px){.actions-grid{grid-template-columns:repeat(2,1fr)}.dashboard-meetings-list{grid-template-columns:1fr;gap:var(--spacing-md)}.dashboard-meeting-card{display:grid!important;grid-template-columns:auto 1fr;grid-template-rows:auto auto;gap:var(--spacing-md);padding:var(--spacing-md);align-items:start;flex-direction:unset!important}.dashboard-meeting-icon{grid-column:1;grid-row:1;width:48px;height:48px;border-radius:12px;flex-shrink:0;align-self:start}.dashboard-meeting-icon .material-icons{font-size:24px}.dashboard-meeting-info{grid-column:2;grid-row:1;min-width:0;padding-left:var(--spacing-sm);width:auto!important}.dashboard-meeting-info h4{font-size:1rem;line-height:1.4;margin-bottom:var(--spacing-xs);-webkit-line-clamp:2}.dashboard-meeting-time{font-size:.813rem;margin:var(--spacing-xs) 0;flex-wrap:wrap}.dashboard-meeting-time .material-icons{font-size:16px;flex-shrink:0}.dashboard-meeting-description{font-size:.813rem;margin-top:var(--spacing-xs);line-height:1.5;-webkit-line-clamp:2}.dashboard-meeting-card .btn{grid-column:1 / -1;grid-row:2;width:100%;justify-content:center;padding:var(--spacing-sm) var(--spacing-md);font-size:.875rem}.dashboard-meeting-card .btn .material-icons{font-size:18px;margin-right:6px;flex-shrink:0}}.dashboard-meetings-list{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-lg);margin-top:var(--spacing-md)}@media(max-width:1024px){.dashboard-meetings-list{grid-template-columns:1fr}}.dashboard-meeting-card{display:flex;align-items:center;gap:var(--spacing-lg);padding:var(--spacing-lg);background:var(--bg-main);border:1px solid var(--border-color);border-radius:16px;transition:transform .3s cubic-bezier(.4,0,.2,1),box-shadow .3s cubic-bezier(.4,0,.2,1),border-color .3s cubic-bezier(.4,0,.2,1);box-shadow:0 1px 3px #0000000d;position:relative;overflow:hidden}.dashboard-meeting-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:linear-gradient(180deg,var(--primary),var(--primary-dark));opacity:0;transition:opacity .3s ease}.dashboard-meeting-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0000001f,0 2px 8px #00000014;border-color:var(--primary)}.dashboard-meeting-card:hover:before{opacity:1}.dashboard-meeting-icon{width:56px;height:56px;background:linear-gradient(135deg,var(--primary-lighter),rgba(157,157,189,.15));color:var(--primary);border-radius:14px;display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 2px 8px #9d9dbd26;transition:all .3s ease}.dashboard-meeting-card:hover .dashboard-meeting-icon{transform:scale(1.1);box-shadow:0 4px 12px #9d9dbd40;background:linear-gradient(135deg,var(--primary),var(--primary-dark));color:#fff}.dashboard-meeting-icon .material-icons{font-size:28px}.dashboard-meeting-info{flex:1;min-width:0}.dashboard-meeting-info h4{margin:0 0 var(--spacing-sm);color:var(--text-dark);font-size:1.0625rem;font-weight:600;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.dashboard-meeting-time,.dashboard-meeting-location{display:flex;align-items:center;gap:var(--spacing-xs);color:var(--text-medium);font-size:.875rem;margin:var(--spacing-xs) 0;font-weight:500}.dashboard-meeting-time .material-icons,.dashboard-meeting-location .material-icons{font-size:18px;color:var(--primary);opacity:.8}.dashboard-meeting-description{color:var(--text-medium);font-size:.875rem;margin:var(--spacing-xs) 0 0 0;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.dashboard-meeting-card .btn{flex-shrink:0;padding:var(--spacing-xs) var(--spacing-md);font-weight:600;font-size:.875rem;border-radius:10px;box-shadow:0 2px 6px #9d9dbd33;transition:all .2s ease}.dashboard-meeting-card .btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #9d9dbd4d}.dashboard-meeting-card .btn .material-icons{font-size:18px;margin-right:4px}.applications-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--spacing-md);margin-top:var(--spacing-md)}.application-card{background:var(--bg-main);border:1px solid var(--border-color);border-radius:var(--border-radius);padding:var(--spacing-md)}.application-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--spacing-sm)}.application-header h4{margin:0;color:var(--text-dark)}.application-date{font-size:.875rem;color:var(--text-medium)}.application-email{color:var(--text-medium);margin-bottom:var(--spacing-md)}.application-footer{border-top:1px solid var(--border-color);padding-top:var(--spacing-md);margin-top:var(--spacing-md)}.groups-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--spacing-md);margin-top:var(--spacing-md)}.group-card{background:var(--bg-main);border:1px solid var(--border-color);border-radius:var(--border-radius);padding:var(--spacing-md)}.group-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-sm)}.group-header h4{margin:0;color:var(--text-dark)}.member-count{display:flex;align-items:center;gap:var(--spacing-xs);color:var(--text-medium);font-size:.875rem}.member-count .material-icons{font-size:1rem}.group-description{color:var(--text-medium);margin-bottom:var(--spacing-md);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.group-footer{border-top:1px solid var(--border-color);padding-top:var(--spacing-md);margin-top:var(--spacing-md)}.application-details{display:flex;flex-direction:column;gap:var(--spacing-xs);margin:var(--spacing-sm) 0}.application-details p{display:flex;align-items:center;gap:var(--spacing-xs);color:var(--text-medium);font-size:.875rem;margin:0}.application-details .material-icons{font-size:16px;color:var(--text-medium)}.application-footer{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--border-color);padding-top:var(--spacing-md);margin-top:var(--spacing-md)}.application-actions{display:flex;gap:var(--spacing-sm)}.btn-success:hover{color:#fff;background-color:var(--success)}.applications-view .filter-bar{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;gap:1rem;background:var(--bg-light);border-radius:var(--border-radius)}.applications-view .filter-group{display:flex;align-items:center;gap:.5rem}.applications-view .filter-group select{padding:.5rem;border:1px solid var(--border-color);border-radius:5px;background:var(--bg-main);outline:none}.applications-view .search-box{display:flex;align-items:center;gap:.5rem;background:var(--bg-main);padding:.5rem 1rem;border:1px solid var(--border-color);border-radius:5px;flex:1;max-width:300px}.applications-view .search-box input{border:none;background:none;outline:none;width:100%}.applications-view .applications-table{width:100%;border-collapse:collapse;margin-top:1rem}.applications-view .applications-table th,.applications-view .applications-table td{padding:1rem;text-align:left;border-bottom:1px solid var(--border-color)}.applications-view .applications-table th{background:var(--bg-light);font-weight:600;color:var(--text-dark)}.applications-view .applicant-info{display:flex;flex-direction:column;gap:4px}.applications-view .applicant-name{font-weight:500;color:var(--text-dark)}.applications-view .applicant-email{font-size:.875rem;color:var(--text-medium)}.applications-view .status-badge{display:inline-flex;align-items:center;padding:4px 12px;border-radius:12px;font-size:.875rem;font-weight:500}.applications-view .status-badge.pending{background:var(--warning-light);color:var(--warning)}.applications-view .status-badge.approved{background:var(--success-light);color:var(--success)}.applications-view .status-badge.rejected{background:var(--danger-light);color:var(--danger)}.applications-view .table-actions{display:flex;gap:.5rem}.applications-view .btn-sm{padding:.25rem .5rem;font-size:.875rem}.applications-view .btn-sm .material-icons{font-size:16px}.useful-links{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:1rem;padding:1rem}.useful-link{display:flex;align-items:center;gap:.75rem;padding:.7rem 1rem;background-color:#f8f9fa;border-radius:8px;text-decoration:none;box-shadow:0 2px 5px #0003;color:#212529;transition:all .2s ease}.useful-link:hover{background-color:#e9ecef;transform:translateY(-2px);box-shadow:0 2px 8px #0006}.useful-link span{display:block;text-wrap:nowrap;font-size:.9rem}.useful-link i{font-size:1.25rem;color:#9d9dbd}.category{margin-bottom:20px}.category h4{font-size:.9rem;margin-bottom:10px;color:#343a40;border-bottom:2px solid #dee2e6;padding-bottom:5px}.activity-feed{display:flex;flex-direction:column;gap:var(--spacing-md)}.user-activity-item{box-shadow:0 0 5px #0000001a;border-radius:8px;padding:10px}.user-activity-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.user-activity-header .user-activity-type{font-size:.75rem;color:var(--primary);font-weight:500;border:1px solid var(--primary);padding:2px 8px;border-radius:12px}.user-activity-header .user-activity-date{font-size:.75rem;color:var(--text-medium);display:flex;align-items:center;gap:4px}.user-activity-header .user-activity-date .material-icons{font-size:1rem;color:var(--primary)}.user-activity-message{font-size:.9rem;color:var(--text-dark)}#editGroupForm{display:flex;flex-direction:column;gap:var(--spacing-lg)}#editGroupForm textarea{resize:vertical;min-height:100px;font-family:inherit}#editGroupForm select{background-color:var(--bg-main);padding:var(--spacing-sm);border:1px solid var(--border-color);border-radius:6px;font-size:1rem;color:var(--text-dark);width:100%}#editGroupForm select:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px var(--primary-lighter)}.status-select option[value=active]{color:var(--success)}.status-select option[value=inactive]{color:var(--error)}#editGroupForm input:invalid,#editGroupForm textarea:invalid,#editGroupForm select:invalid{border-color:var(--error)}#editGroupForm input:invalid:focus,#editGroupForm textarea:invalid:focus,#editGroupForm select:invalid:focus{box-shadow:0 0 0 2px var(--error-lighter)}.btn-primary.loading{position:relative;color:transparent}.btn-primary.loading:after{content:"";position:absolute;width:16px;height:16px;top:50%;left:50%;margin:-8px 0 0 -8px;border:2px solid var(--bg-main);border-radius:50%;border-right-color:transparent;animation:spin .75s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.management-body{display:flex;justify-content:center;align-items:center;gap:1rem;flex-wrap:wrap}.management-body-item{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:.5rem;padding:1rem;border:1px solid rgba(0,0,0,.1);border-radius:8px;cursor:pointer;transition:all .2s ease}.management-body-item .material-icons{font-size:2rem}.management-body-item:hover{transform:translateY(-2px);box-shadow:0 2px 4px #0000001a}.image-management{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1rem;margin:20px}.image-card{background-color:#f9f9f9;border:1px solid #ddd;border-radius:8px;box-shadow:0 2px 5px #0000001a;margin:10px;padding:10px;text-align:center;transition:transform .2s;display:flex;flex-direction:column;align-items:center;justify-content:space-between;cursor:pointer}.image-card:hover{transform:scale(1.05)}.image-card img{max-width:100%;max-height:100px;height:auto;border-radius:4px;object-fit:cover}.image-card p{margin-top:2px;font-size:14px;color:#555}.image-modal-content{display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden;max-width:90vw;max-height:90vh}.image-modal-header{display:flex;justify-content:space-between;align-items:center;width:100%;padding:1rem;background-color:#f9f9f9;border-radius:8px}.image-modal-body{display:flex;align-items:center;justify-content:center;width:100%;height:calc(100vh - 60px);padding:1rem;background-color:#f9f9f9;border-radius:8px;overflow:hidden}.image-modal-body img{max-width:100%;max-height:100%;height:auto;object-fit:contain;display:block;margin:auto}.user-management{width:100%;border-collapse:collapse;margin-top:1rem}.user-management th{background-color:#efefef;min-width:200px;max-width:50%;width:100%;padding:.5rem;text-align:left;border:1px solid #ddd}.user-management td{width:100%;padding:.5rem;text-align:left}.user-management tr:hover{cursor:pointer;background-color:#d5d5d5}.finance-management{display:flex;flex-direction:column;gap:.5rem}.finance-item{display:flex;justify-content:space-between;align-items:center;gap:3rem;padding:.5rem 1rem;border-radius:.5rem;cursor:pointer}.finance-item div:last-child{min-width:110px}.finance-item:hover{transform:translateY(-2px);box-shadow:0 2px 4px #0000001a;transition:all .2s ease}.finance-item.income{border:1px solid rgba(9,255,0,1);background-color:#09ff001a}.finance-item.expense{border:1px solid rgba(255,0,0,1);background-color:#ff00001a}.finance-details{display:flex;flex-direction:column;gap:var(--spacing-md);color:#000}.finance-detail-item{display:flex;align-items:center;gap:var(--spacing-sm);position:relative}.finance-detail-item .finance-type{position:absolute;right:0;font-size:.8rem;font-weight:500;padding:4px 12px;border-radius:12px;text-align:right}.finance-detail-item .finance-type.income{background-color:#09ff001a;border:1px solid rgba(9,255,0,1)}.finance-detail-item .finance-type.expense{background-color:#ff00001a;border:1px solid rgba(255,0,0,1)}.finance-detail-item img{max-width:100%;max-height:500px;width:100%;height:auto;object-fit:contain;border-radius:.5rem;border:1px solid rgba(0,0,0,.4)}.stat-value.finance-positive{color:#17aa00}.stat-value.finance-negative{color:red}.finance-detail-item .material-icons{font-size:1.25rem}.finance-detail-item .finance-currency{font-size:1.5rem;font-weight:500;margin-left:3px}.finance-warning{color:red;text-align:center;padding-bottom:1rem;border-bottom:1px solid rgba(0,0,0,.1);margin-bottom:1rem}.finance-type{font-weight:500;padding:4px 12px;border-radius:12px}.finance-amount{font-size:1.25rem;font-weight:500}.finance-description{line-height:1.5}.finance-date,.finance-update{font-size:.875rem}.modal-footer{display:flex;justify-content:flex-end;gap:var(--spacing-sm);border-top:1px solid var(--border-color)}.projects-page.projects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(360px,1fr));gap:var(--spacing-lg);margin-top:var(--spacing-lg)}.project-card{background:var(--bg-main);border:1px solid var(--border-color);border-radius:16px;padding:var(--spacing-lg);transition:transform .3s cubic-bezier(.4,0,.2,1),box-shadow .3s cubic-bezier(.4,0,.2,1),border-color .3s cubic-bezier(.4,0,.2,1);box-shadow:0 1px 3px #0000000d;position:relative;overflow:hidden;display:flex;flex-direction:column}.project-card[data-status=active]:before{background:linear-gradient(180deg,var(--success),#66bb6a)}.project-card[data-status=completed]:before{background:linear-gradient(180deg,var(--primary),var(--primary-dark))}.project-card[data-status=planning]:before{background:linear-gradient(180deg,var(--warning),#ffa726)}.project-card[data-status=on-hold]:before{background:linear-gradient(180deg,#ff9800,#f57c00)}.project-header .project-title{display:block;margin-bottom:var(--spacing-sm)}.header-badges{display:flex;align-items:center;gap:var(--spacing-sm);flex-wrap:wrap;flex-shrink:0}.header-badges .project-type{padding:6px 12px;border-radius:12px;font-size:.75rem;font-weight:600;background:var(--bg-light);color:var(--text-medium);border:1px solid var(--border-color);text-transform:capitalize;white-space:nowrap;flex-shrink:0}.header-badges .project-type.course{background:#ff7d7d1a;color:#ff7d7d;border-color:#ff7d7d4d}.header-badges .group-badge{padding:6px 12px;border-radius:12px;font-size:.75rem;font-weight:600;background:var(--bg-light);color:var(--text-medium);border:1px solid var(--border-color);text-transform:capitalize;white-space:nowrap;flex-shrink:0}.header-badges .contributor-count-badge,.header-badges .publication-count-badge{padding:6px 12px;border-radius:12px;font-size:.75rem;font-weight:600;background:var(--bg-light);color:var(--text-medium);border:1px solid var(--border-color);white-space:nowrap;flex-shrink:0;display:inline-flex;align-items:center;gap:4px}.header-badges .access{display:flex;align-items:center;justify-content:center;color:var(--primary);flex-shrink:0}.header-badges .access svg{width:20px;height:20px;fill:var(--primary);opacity:.8}.header-content{flex:1;min-width:0}.header-content h2{margin:0;font-size:1.75rem;font-weight:600;color:var(--text-dark);line-height:1.4;word-wrap:break-word;overflow-wrap:break-word}.header-meta{display:flex;align-items:center;gap:var(--spacing-sm);flex-wrap:wrap}.project-type-badge{padding:4px 12px;border-radius:12px;font-size:.75rem;font-weight:600;text-transform:capitalize;background:var(--primary-lighter);color:var(--primary);border:1px solid var(--primary)}.header-actions{display:flex;align-items:center;justify-content:flex-end;gap:var(--spacing-sm)}.status-badge{padding:6px 12px;border:1px solid;border-radius:12px;font-size:.75rem;font-weight:600;text-transform:capitalize;flex-shrink:0;white-space:nowrap;transition:all .2s ease}.status-badge.active{background:var(--success-lighter);color:var(--success);border-color:var(--success)}.status-badge.planning{background:var(--warning-lighter);color:var(--warning);border-color:var(--warning)}.status-badge.pending,.status-badge.completed{background:var(--primary-lighter);color:var(--primary);border-color:var(--primary)}.status-badge.on-hold{background:#ff98001a;color:#ff9800;border-color:#ff9800}.details-dates{display:flex;justify-content:space-between;gap:var(--spacing-sm)}.details-dates div{font-size:1rem;color:var(--text-dark)}.project-actions{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md);margin-top:auto;padding-top:var(--spacing-md);border-top:1px solid var(--border-color);flex-wrap:wrap}.project-actions>*:first-child{display:flex;align-items:center;gap:var(--spacing-sm);flex:1;min-width:0}.project-actions span.project-type{padding:6px 12px;border-radius:12px;font-size:.75rem;font-weight:600;background:var(--bg-light);color:var(--text-medium);border:1px solid var(--border-color);text-transform:capitalize;white-space:nowrap;flex-shrink:0}.project-actions span.project-type.course{background:#ff7d7d1a;color:#ff7d7d;border-color:#ff7d7d4d}.project-actions .access{display:flex;align-items:center;justify-content:center;color:var(--primary);flex-shrink:0}.project-actions .access svg{width:20px;height:20px;fill:var(--primary);opacity:.8}.project-actions .actions-group{display:flex;align-items:center;gap:var(--spacing-sm);flex-shrink:0;justify-content:flex-end}.project-actions .btn{flex-shrink:0;padding:var(--spacing-xs) var(--spacing-md);font-size:.875rem;font-weight:500;border-radius:10px;transition:all .2s ease;white-space:nowrap;width:auto;min-width:auto}.project-actions .btn-primary{box-shadow:0 2px 6px #9d9dbd33}.project-actions .btn-primary:hover{transform:translateY(-1px);box-shadow:0 4px 12px #9d9dbd4d}.project-actions .btn-outline:hover{background:var(--bg-light);border-color:var(--primary);transform:translateY(-1px)}.filters-container{display:flex;justify-content:space-between;align-items:center;margin:var(--spacing-lg) 0;gap:var(--spacing-md);flex-wrap:wrap;padding:var(--spacing-md);background:var(--bg-main);border:1px solid var(--border-color);border-radius:12px;box-shadow:0 1px 3px #0000000d}.search-bar{display:flex;align-items:center;flex:1;max-width:400px;background:var(--bg-main);border:1px solid var(--border-color);border-radius:var(--border-radius-sm);padding:var(--spacing-sm) var(--spacing-md);gap:var(--spacing-sm);transition:all .2s ease;box-shadow:0 1px 2px #00000008}.search-bar:hover{border-color:var(--primary-light);box-shadow:0 2px 4px #0000000d}.search-bar:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-lighter),0 2px 4px #0000000d}.search-bar .material-icons{color:var(--text-medium);font-size:20px;flex-shrink:0;transition:color .2s ease}.search-bar:focus-within .material-icons{color:var(--primary)}.search-bar input{border:none;background:none;width:100%;outline:none;font-size:.9375rem;color:var(--text-dark);padding:0;font-family:inherit}.search-bar input::placeholder{color:var(--text-light);opacity:.7}.filter-buttons{display:flex;gap:var(--spacing-xs);flex-wrap:wrap;background:var(--bg-light);padding:4px;border-radius:12px}.filter-buttons select{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--border-color);border-radius:8px;background:var(--bg-main);color:var(--text-dark);font-size:.9375rem;font-weight:500;cursor:pointer;transition:border-color .2s ease;min-width:140px}.filter-buttons select:hover{border-color:var(--primary);transform:none}.filter-buttons select:focus,.filter-buttons button:focus{outline:none;border-color:var(--primary)}.filter-buttons button{padding:10px 20px;border:none;background:transparent;color:var(--text-medium);border-radius:8px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);position:relative}.filter-buttons button:hover{color:var(--primary);background:#9d9dbd1a;transform:none}.filter-buttons button.active{background:linear-gradient(135deg,var(--primary) 0%,var(--primary-dark) 100%);color:#fff;box-shadow:0 2px 8px #9d9dbd4d}.filter-buttons button.active:hover{transform:translateY(-1px);box-shadow:0 4px 12px #9d9dbd66}.project-image{width:100%;height:160px;object-fit:cover}.project-content{padding:var(--spacing-lg)}.project-title{color:var(--text-dark);font-size:1.25rem;font-weight:600;margin:0;line-height:1.4;flex:1;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.project-description{color:var(--text-medium);font-size:.9375rem;margin:var(--spacing-md) 0;line-height:1.7;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;flex:1}.project-meta{display:flex;flex-direction:column;gap:var(--spacing-xs);color:var(--text-medium);font-size:.875rem;margin:0;padding:var(--spacing-md);background:var(--bg-light);border-radius:10px;border:1px solid var(--border-color)}.project-meta .meta-item{display:flex;align-items:center;gap:var(--spacing-xs);font-weight:500}.project-meta .meta-item .material-icons{font-size:18px;color:var(--primary);opacity:.8}.project-meta .lead-name{font-weight:600;color:var(--text-dark)}.project-tags{display:flex;gap:var(--spacing-xs)}.project-tag{background:var(--bg-light);padding:.25rem .75rem;border-radius:20px;font-size:.875rem}.details-grid{display:flex;flex-direction:column;gap:var(--spacing-lg);margin-top:var(--spacing-lg)}.details-info-card .details-header{position:relative}.details-info-card .status-badge{margin-left:auto}.details-info-card,.details-contributors,.details-summaries{background:var(--bg-main);border:1px solid var(--border-color);border-radius:16px;padding:0;transition:transform .3s cubic-bezier(.4,0,.2,1),box-shadow .3s cubic-bezier(.4,0,.2,1),border-color .3s cubic-bezier(.4,0,.2,1);box-shadow:0 1px 3px #0000000d;position:relative;overflow:hidden}.details-info-card:hover,.details-contributors:hover,.details-summaries:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0000001f,0 2px 8px #00000014;border-color:var(--primary)}.details-header{padding:var(--spacing-lg);border-bottom:1px solid var(--border-color);background:var(--bg-main);display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-md);flex-wrap:wrap}.details-header h3{margin:0;font-size:1.125rem;font-weight:600;color:var(--text-dark);display:flex;align-items:center;gap:var(--spacing-sm)}.details-header h3 .material-icons{font-size:1.25rem;color:var(--primary);opacity:.9}.details-header .btn{flex-shrink:0;padding:var(--spacing-sm) var(--spacing-md);font-size:.875rem;font-weight:500;border-radius:8px;box-shadow:0 2px 4px #00000014;transition:all .2s ease}.details-header .btn:hover{transform:translateY(-1px);box-shadow:0 4px 8px #0000001f}.details-header select{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--border-color);border-radius:8px;background:var(--bg-main);font-size:.875rem;color:var(--text-dark);cursor:pointer;transition:all .2s ease}.details-header select:hover{border-color:var(--primary)}.details-header select:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-lighter)}.details-section{padding:var(--spacing-lg);border-bottom:1px solid var(--border-color);transition:background-color .2s ease}.details-section:hover{background:var(--bg-light)}.details-section:last-child{border-bottom:none}.details-label{display:block;color:var(--text-medium);font-size:.875rem;font-weight:600;margin-bottom:var(--spacing-md);text-transform:uppercase;letter-spacing:.5px}.details-section p{color:var(--text-dark);font-size:.9375rem;line-height:1.7;margin:0}.details-lead-info{font-size:1.0625rem;color:var(--text-dark);font-weight:500}.project-progress{position:relative;width:100%;height:24px;background:var(--bg-light);border-radius:12px;overflow:hidden;box-shadow:inset 0 1px 2px #0000001a;border:1px solid var(--border-color)}.progress-bar{height:100%;background:linear-gradient(90deg,var(--primary),var(--primary-dark));width:0%;border-radius:12px;transition:width .4s ease}.progress-text{position:absolute;top:0;left:0;height:100%;width:100%;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.875rem;color:var(--text-dark);pointer-events:none;-webkit-user-select:none;user-select:none}.contributor-list{padding:var(--spacing-lg);display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:var(--spacing-md)}.contributor-item{padding:var(--spacing-lg);border:1px solid var(--border-color);border-radius:16px;display:flex;justify-content:space-between;align-items:center;transition:transform .3s cubic-bezier(.4,0,.2,1),box-shadow .3s cubic-bezier(.4,0,.2,1),border-color .3s cubic-bezier(.4,0,.2,1);background:var(--bg-main);box-shadow:0 1px 3px #0000000d;position:relative;overflow:hidden}.contributor-item:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0000001f,0 2px 8px #00000014;border-color:var(--primary)}.contributor-info{display:flex;align-items:center;gap:var(--spacing-md);flex:1}.contributor-info img,.contributor-avatar{width:56px;height:56px;border-radius:50%;object-fit:cover;border:3px solid var(--primary-lighter);flex-shrink:0;transition:all .3s ease}.contributor-item:hover .contributor-info img,.contributor-item:hover .contributor-avatar{border-color:var(--primary);transform:scale(1.05);box-shadow:0 4px 12px #9d9dbd40}.contributor-details{display:flex;flex-direction:column;gap:var(--spacing-xs);min-width:0}.contributor-name{font-weight:600;color:var(--text-dark);font-size:1rem}.contributor-role{font-size:.875rem;color:var(--text-medium);font-weight:500}.join-date{font-size:.813rem;color:var(--text-medium)}.report-list{padding:var(--spacing-lg);display:flex;flex-direction:column;gap:var(--spacing-md)}.report-list::-webkit-scrollbar{width:6px}.report-list::-webkit-scrollbar-track{background:var(--bg-light);border-radius:3px}.report-list::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:3px}.report-list::-webkit-scrollbar-thumb:hover{background:var(--primary)}.report-item{padding:var(--spacing-lg);border-radius:16px;background:var(--bg-main);border:1px solid var(--border-color);transition:transform .3s cubic-bezier(.4,0,.2,1),box-shadow .3s cubic-bezier(.4,0,.2,1),border-color .3s cubic-bezier(.4,0,.2,1);box-shadow:0 1px 3px #0000000d;position:relative}.report-item:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0000001f,0 2px 8px #00000014;border-color:var(--primary)}.outline-item{padding:var(--spacing-lg);border-radius:16px;background:var(--bg-main);border:1px solid var(--border-color);transition:transform .3s cubic-bezier(.4,0,.2,1),box-shadow .3s cubic-bezier(.4,0,.2,1),border-color .3s cubic-bezier(.4,0,.2,1);box-shadow:0 1px 3px #0000000d;position:relative}.outline-item:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0000001f,0 2px 8px #00000014;border-color:var(--primary)}.report-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--border-color);flex-wrap:wrap;gap:var(--spacing-sm)}.report-meta{display:flex;align-items:center;gap:var(--spacing-sm)}.week-label{background:var(--primary-lighter);color:var(--primary);padding:4px 12px;border-radius:var(--border-radius-sm);font-size:.813rem;font-weight:500;white-space:nowrap}.report-date{color:var(--text-medium);font-size:.813rem}.report-author{font-size:.813rem;color:var(--text-medium);font-weight:500}.report-item .report-content{color:var(--text-dark);line-height:1.7;margin:0;font-size:.9375rem}.report-item .report-content .project-actions,.outline-item .project-actions{margin-top:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid var(--border-color);display:flex;align-items:center;gap:var(--spacing-sm);justify-content:flex-end}.report-item .report-content .project-actions .btn,.outline-item .project-actions .btn{align-self:auto;flex-basis:auto}.report-item .report-content .project-actions .btn,.outline-item .project-actions .btn{display:inline-flex!important;align-items:center;gap:var(--spacing-xs);width:auto!important;min-width:auto!important;flex-shrink:0;flex-grow:0}.report-item .course-report-content{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md);flex-wrap:wrap;color:var(--text-dark);line-height:1.6;padding:5px;margin:1px 0;border:1px solid var(--border-color);border-radius:4px}.course-report-date{font-size:.875rem;color:var(--text-medium)}.outline-item .report-content{color:var(--text-dark);line-height:1.7;margin:0;font-size:.9375rem}.report-content h1,h2,h3,h4,h5{margin-bottom:10px}.report-content ul,ol{margin:10px;padding-left:16px}.report-content code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace;font-size:.875rem;background-color:var(--primary-lighter);padding:.1rem .3rem;border-radius:.4rem;box-shadow:0 0 2px #00000080}.report-content pre{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace;font-size:.875rem;background-color:var(--primary-lighter);padding:.5rem 1rem;border-radius:.4rem;box-shadow:0 0 2px #00000080;overflow-x:auto;margin:.5em 0}.report-content pre code{background-color:none;padding:0;border-radius:0;box-shadow:none}.report-content blockquote{border-left:4px solid var(--primary);margin:1em 0;padding:.5em 1em;background:var(--surface-color);color:var(--text-medium)}.report-content table{border-collapse:collapse;width:100%;margin:1em 0}.report-content th,.report-content td{border:1px solid var(--border-color);padding:.5em;text-align:left}.report-content th{background:var(--surface-color)}.report-content img{max-width:100%;height:auto;border-radius:var(--border-radius);margin:1em 0}.report-content a{color:#1b76ff;text-decoration:none}.report-content a:hover{text-decoration:underline}.katex-html{display:none}.katex{font-size:1.1em}.report-actions{display:flex;gap:var(--spacing-xs);margin-top:var(--spacing-sm)}.contributor-avatar{width:32px;height:32px;border-radius:50%}.empty-state{padding:calc(var(--spacing-xl) * 1.5) var(--spacing-xl);text-align:center;color:var(--text-medium);display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:280px;background:linear-gradient(135deg,#1b76ff05,#1b76ff0d);border:2px dashed var(--border-color);border-radius:16px;margin:var(--spacing-lg) 0;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.empty-state:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 50%,rgba(27,118,255,.03) 0%,transparent 70%);opacity:0;transition:opacity .3s ease}.empty-state:hover{border-color:var(--primary);background:linear-gradient(135deg,#1b76ff0a,#1b76ff14);transform:translateY(-2px);box-shadow:0 8px 24px #00000014}.empty-state:hover:before{opacity:1}.empty-state .material-icons{font-size:3.5rem;color:var(--text-light);margin-bottom:var(--spacing-md);opacity:.5;display:block;transition:all .3s ease;position:relative;z-index:1}.empty-state:hover .material-icons{opacity:.7;color:var(--primary);transform:translateY(-4px)}.empty-state p{font-size:1rem;margin:0;color:var(--text-dark);font-weight:500;letter-spacing:.01em;line-height:1.6;max-width:400px;position:relative;z-index:1}@media(max-width:768px){.projects-page.projects-grid{grid-template-columns:1fr;gap:var(--spacing-md);margin-top:var(--spacing-md)}.project-card{padding:var(--spacing-md);border-radius:12px}.project-card:hover{transform:translateY(-2px)}.project-header,.project-header .project-title{display:block;margin-bottom:var(--spacing-sm)}.header-badges{width:100%;justify-content:flex-start;gap:var(--spacing-xs);flex-wrap:wrap}.project-title{font-size:1.0625rem;font-weight:600;-webkit-line-clamp:2;line-height:1.4;margin:0}.status-badge{align-self:flex-start;font-size:.75rem;padding:5px 10px}.project-description{font-size:.875rem;margin:var(--spacing-sm) 0;-webkit-line-clamp:3;line-height:1.6}.project-meta{padding:var(--spacing-sm);margin:var(--spacing-sm) 0;font-size:.813rem;gap:var(--spacing-xs)}.project-meta .meta-item{font-size:.813rem}.project-actions{flex-direction:column;align-items:stretch;gap:var(--spacing-sm);margin-top:var(--spacing-sm);padding-top:var(--spacing-sm)}.project-actions>*:first-child{justify-content:flex-start;width:100%}.project-actions span.project-type{font-size:.75rem;padding:5px 10px}.project-actions .access{margin-left:auto}.project-actions .actions-group{display:flex;flex-direction:row;flex-wrap:wrap;gap:var(--spacing-sm);width:100%;justify-content:flex-end}.project-actions .actions-group .btn{width:auto;flex:0 0 auto;justify-content:center;padding:var(--spacing-sm) var(--spacing-md);font-size:.875rem}.filters-container{flex-direction:column;align-items:stretch;padding:var(--spacing-sm);gap:var(--spacing-sm)}.search-bar{max-width:100%;width:100%}.filter-buttons{flex-direction:row;width:100%;gap:var(--spacing-sm);flex-wrap:wrap}.filter-buttons select,.filter-buttons button{flex:1;min-width:unset;font-size:.65rem;padding:var(--spacing-xs) var(--spacing-sm)}.details-grid{gap:var(--spacing-md);margin-top:var(--spacing-md)}.details-info-card,.details-contributors,.details-summaries{border-radius:12px;padding:0}.details-info-card:hover,.details-contributors:hover,.details-summaries:hover{transform:translateY(-2px)}.details-header{padding:var(--spacing-md);flex-direction:row;align-items:center;gap:var(--spacing-sm);flex-wrap:wrap}.details-header h3{font-size:1rem;flex:1;min-width:0}.details-header .btn{width:auto;flex-shrink:0;padding:var(--spacing-xs) var(--spacing-sm);font-size:.813rem}.details-header select{width:auto;min-width:120px;font-size:.813rem;padding:var(--spacing-xs) var(--spacing-sm)}.details-section{padding:var(--spacing-md)}.details-label{font-size:.75rem;margin-bottom:var(--spacing-sm)}.details-section p{font-size:.875rem;line-height:1.6}.details-lead-info{font-size:.9375rem}.project-progress{height:20px}.progress-text{font-size:.75rem}.contributor-list{grid-template-columns:1fr;padding:var(--spacing-md);gap:var(--spacing-md)}.contributor-item{flex-direction:row;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);border-radius:12px}.contributor-item:hover{transform:translateY(-2px)}.contributor-info{flex:1;min-width:0}.contributor-info img,.contributor-avatar{width:48px;height:48px;border-width:2px}.contributor-name{font-size:.9375rem}.contributor-role{font-size:.813rem}.join-date{font-size:.75rem}.contributor-actions{width:auto;flex-shrink:0;gap:var(--spacing-xs)}.contributor-actions .btn-icon{width:32px;height:32px}.report-list{padding:var(--spacing-md);gap:var(--spacing-md)}.report-item,.outline-item{padding:var(--spacing-md);border-radius:12px}.report-item:hover,.outline-item:hover{transform:translateY(-2px)}.report-header{flex-direction:column;align-items:flex-start;gap:var(--spacing-xs);padding-bottom:var(--spacing-sm);margin-bottom:var(--spacing-sm)}.report-meta{width:100%;flex-wrap:wrap;gap:var(--spacing-xs)}.week-label{font-size:.75rem;padding:3px 10px}.report-date,.report-author{font-size:.75rem}.report-item .report-content,.outline-item .report-content{font-size:.875rem;line-height:1.6}.report-item .report-content .project-actions,.outline-item .project-actions{flex-direction:row;flex-wrap:wrap;gap:var(--spacing-xs);margin-top:var(--spacing-sm);padding-top:var(--spacing-sm)}.report-item .report-content .project-actions .btn,.outline-item .project-actions .btn{font-size:.813rem;padding:var(--spacing-xs) var(--spacing-sm)}.course-report-content{flex-direction:column;align-items:flex-start;gap:var(--spacing-sm);padding:var(--spacing-sm)}.course-report-date{font-size:.813rem}.page-header{flex-direction:column;align-items:flex-start;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.header-content h2{font-size:1.25rem;line-height:1.4}.header-actions{width:100%;display:flex;gap:var(--spacing-sm)}.header-actions .btn{flex:1;justify-content:center}#reportUserFilter{display:none}}.form-group{margin-bottom:var(--spacing-md)}.form-group-row{display:flex;justify-content:space-between;gap:2rem}#outlineFile{padding:9px}.form-group-row .form-group{flex:1}.form-group label{display:block;margin-bottom:var(--spacing-xs);color:var(--text-dark);font-weight:500}.contributor-actions{display:flex;align-items:center;gap:var(--spacing-sm);flex-shrink:0}.contributor-actions .btn-icon{width:36px;height:36px;padding:0;display:flex;align-items:center;justify-content:center;border-radius:8px}.btn-icon{padding:4px;min-width:unset;border-radius:50%}.btn-icon .material-icons{font-size:20px}textarea.form-control{resize:vertical;min-height:100px}.form-control[type=number]{width:100px}.report-item,.outline-item{word-break:break-word}.btn-sm{padding:4px var(--spacing-sm);font-size:.875rem;font-weight:500;border-radius:8px;transition:all .2s ease;display:inline-flex;align-items:center;gap:var(--spacing-xs);width:auto!important;min-width:auto!important;flex-shrink:0}.btn-sm .material-icons{font-size:18px}.btn-sm:hover{transform:translateY(-1px)}.btn-danger.btn-sm{background:#f44336;color:#fff;border:1px solid #f44336;box-shadow:0 2px 4px #f4433633}.btn-danger.btn-sm:hover{background:#d32f2f;border-color:#d32f2f;box-shadow:0 4px 8px #f443364d}.outline-item .project-actions .btn-danger.btn-sm,.report-item .report-content .project-actions .btn-danger.btn-sm{background:transparent;color:#e57373;border:1px solid #e57373;box-shadow:none}.outline-item .project-actions .btn-danger.btn-sm:hover,.report-item .report-content .project-actions .btn-danger.btn-sm:hover{background:#f443361a;color:#d32f2f;border-color:#d32f2f;box-shadow:0 2px 4px #f4433626}.outline-item .project-actions .btn-sm,.report-item .report-content .project-actions .btn-sm{padding:4px var(--spacing-sm)}.btn-outline.btn-sm{border:1px solid var(--border-color);background:transparent;color:var(--text-dark)}.btn-outline.btn-sm:hover{background:var(--bg-light);border-color:var(--primary);color:var(--primary)}#reportUserFilter{height:36px;min-width:180px;max-width:320px;width:auto;padding:0 var(--spacing-md);border:1px solid var(--border-color);border-radius:8px;background:var(--bg-main);color:var(--text-dark);font-size:.875rem;cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cpath fill='%236B7280' d='M7 10l5 5 5-5z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 8px center}#reportUserFilter:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px var(--primary-lighter)}#reportUserFilter:hover{border-color:var(--primary)}.group-container{padding:var(--spacing-lg)}.members-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--spacing-lg);margin-top:var(--spacing-md)}.members-grid .member-card{background:var(--bg-main);border:1px solid var(--border-color);border-radius:16px;padding:var(--spacing-lg);display:flex;align-items:flex-start;gap:var(--spacing-lg);transition:all .3s cubic-bezier(.4,0,.2,1);text-align:left;box-shadow:0 1px 3px #0000000d;position:relative;overflow:hidden}.members-grid .member-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:linear-gradient(180deg,var(--primary),var(--primary-dark));opacity:0;transition:opacity .3s ease}.members-grid .member-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0000001f,0 2px 8px #00000014;border-color:var(--primary)}.members-grid .member-card:hover:before{opacity:1}.members-grid .member-avatar{width:72px;height:72px;border-radius:50%;object-fit:cover;margin:0;border:3px solid var(--primary-lighter);transition:all .3s ease;flex-shrink:0}.members-grid .member-avatar-initials{display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--primary) 0%,var(--primary-dark) 100%);color:#fff;font-weight:600;font-size:1.5rem;object-fit:none}.members-grid .member-card:hover .member-avatar{border-color:var(--primary);transform:scale(1.05);box-shadow:0 4px 12px #9d9dbd40}.members-grid .member-info{flex:1;display:flex;flex-direction:column;align-items:flex-start}.members-grid .member-info-edit{display:flex;gap:var(--spacing-sm)}.members-grid .member-info h4,.members-grid .member-info-edit h4{color:var(--text-dark);font-size:1.0625rem;font-weight:600;margin:0 0 var(--spacing-xs) 0;line-height:1.4}.members-grid .member-role{font-size:.875rem;font-weight:600;color:var(--primary);margin:0 0 var(--spacing-xs) 0;padding:4px 10px;background:var(--primary-lighter);border-radius:12px;display:inline-block;width:fit-content}.members-grid .member-email{color:var(--text-medium);font-size:.875rem;margin:0;word-break:break-word}.projects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(360px,1fr));gap:var(--spacing-lg);margin-top:var(--spacing-lg)}.project-card{background:var(--bg-main);border:1px solid var(--border-color);border-radius:16px;padding:var(--spacing-lg);transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 1px 3px #0000000d;position:relative;overflow:hidden}.project-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:linear-gradient(180deg,var(--primary),var(--primary-dark));opacity:0;transition:opacity .3s ease}.project-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0000001f,0 2px 8px #00000014;border-color:var(--primary)}.project-card:hover:before{opacity:1}.project-header{display:block;margin-bottom:var(--spacing-md)}.project-header h4{color:var(--text-dark);font-size:1.125rem;font-weight:600}.project-status{padding:6px 12px;border:1px solid;border-radius:12px;font-size:.75rem;font-weight:600;text-transform:capitalize;flex-shrink:0;white-space:nowrap}.project-status.active{background:var(--success-lighter);color:var(--success);border-color:var(--success)}.project-status.planning{background:var(--warning-lighter);color:var(--warning);border-color:var(--warning)}.project-status.pending,.project-status.completed{background:var(--primary-lighter);color:var(--primary);border-color:var(--primary)}.project-description{color:var(--text-medium);font-size:.875rem;margin-bottom:var(--spacing-md);line-height:1.5}.project-meta{display:flex;justify-content:space-between;color:var(--text-medium);font-size:.875rem}.project-actions{display:flex;align-items:center;justify-content:flex-end;gap:var(--spacing-sm);margin-top:var(--spacing-md)}.project-report-actions{display:flex;align-items:center;justify-content:flex-end;gap:var(--spacing-sm)}.project-actions .access svg{display:flex;align-items:center;justify-content:center;fill:var(--primary)}.meetings-list{display:flex;flex-direction:column;gap:var(--spacing-md);margin-top:var(--spacing-md)}.meeting-item{background:var(--bg-main);border:1px solid var(--border-color);border-radius:12px;padding:var(--spacing-md);display:flex;align-items:center;gap:var(--spacing-lg);transition:transform .2s ease}.meeting-item:hover{transform:translateY(-2px);box-shadow:0 4px 8px var(--shadow-hover)}.meeting-time{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xs);color:var(--text-medium);font-size:.875rem}.meeting-time .material-icons{color:var(--primary);font-size:1.5rem}.meeting-info{flex:1}.meeting-info h4{color:var(--text-dark);font-size:1rem;margin-bottom:var(--spacing-xs)}.meeting-info p{color:var(--text-medium);font-size:.875rem}.meeting-actions{display:flex;align-items:center;gap:var(--spacing-sm)}.meeting-card{background:var(--bg-main);border:1px solid var(--border-color);border-radius:16px;padding:var(--spacing-lg);margin-bottom:var(--spacing-md);transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 1px 3px #0000000d;position:relative;overflow:hidden}.meeting-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a;border-color:var(--primary)}.meeting-card .meeting-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md);gap:var(--spacing-md);flex-wrap:wrap}.meeting-card .meeting-datetime{display:flex;align-items:center;gap:var(--spacing-sm);color:var(--text-medium);font-weight:500;font-size:.875rem;flex-wrap:wrap}.meeting-card .meeting-datetime .material-icons{font-size:20px;color:var(--primary);opacity:.9;flex-shrink:0}.meeting-card .meeting-date{font-weight:600;color:var(--text-dark);font-size:.9375rem}.meeting-card .meeting-time{color:var(--text-medium);font-size:.875rem;padding-left:var(--spacing-xs);border-left:1px solid var(--border-color);margin-left:var(--spacing-xs)}.meeting-card .meeting-title{margin:0 0 var(--spacing-md);color:var(--text-dark);font-size:1.25rem;font-weight:600;line-height:1.4}.meeting-card .meeting-description{color:var(--text-medium);font-size:.9375rem;line-height:1.6;margin:0}.publications-list{display:flex;flex-direction:column;gap:var(--spacing-md);margin-top:var(--spacing-md)}.publication-card{background:var(--bg-main);border:1px solid var(--border-color);border-radius:16px;padding:var(--spacing-lg);margin-bottom:var(--spacing-md);transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 1px 3px #0000000d;position:relative;overflow:hidden}.publication-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:linear-gradient(180deg,var(--primary),var(--primary-dark));opacity:0;transition:opacity .3s ease}.publication-card:hover{transform:translateY(-2px);box-shadow:0 6px 20px #0000001a,0 2px 6px #0000000f;border-color:var(--primary)}.publication-card:hover:before{opacity:1}.publication-header{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md);margin-bottom:var(--spacing-md);flex-wrap:wrap}.publication-tags{display:flex;align-items:center;gap:var(--spacing-sm);flex-wrap:wrap}.publication-actions{display:flex;align-items:center;gap:var(--spacing-xs);flex-shrink:0}.btn-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border:1px solid var(--border-color);background:var(--bg-main);color:var(--text-medium);border-radius:8px;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);box-shadow:0 1px 2px #0000000d}.btn-icon:hover{background:var(--primary-lighter);color:var(--primary);border-color:var(--primary);transform:translateY(-1px);box-shadow:0 2px 4px #0000001a}.btn-icon:active{transform:translateY(0);box-shadow:0 1px 2px #0000000d}.btn-icon .material-icons{font-size:18px;line-height:1}.btn-icon-danger{border-color:var(--border-color);color:var(--text-medium)}.btn-icon-danger:hover{background:var(--error-lighter);color:var(--error);border-color:var(--error);box-shadow:0 2px 4px #f4433633}.publication-tag{background:var(--primary-lighter);color:var(--primary);padding:6px 12px;border-radius:12px;font-size:.75rem;font-weight:600;border:1px solid var(--primary);flex-shrink:0;white-space:nowrap;transition:all .2s ease}.publication-tag:hover{background:var(--primary);color:#fff;transform:translateY(-1px)}.publication-card p{color:var(--text-dark);font-size:.9375rem;margin:0;line-height:1.7}.publication-card p b{font-weight:600;color:var(--text-dark)}.publication-card p a{color:var(--primary);text-decoration:none;font-weight:500;font-size:.9375rem;display:inline;transition:all .2s ease;margin-left:0}.publication-card p a:hover{color:var(--primary-dark);text-decoration:underline}.publication-card p a:visited{color:var(--primary)}.publication-item{background:var(--bg-main);border:1px solid var(--border-color);border-radius:var(--border-radius);padding:var(--spacing-md);margin-bottom:var(--spacing-md)}.publication-item h4{color:var(--text-dark);font-size:1.125rem;margin-bottom:var(--spacing-sm)}.publication-item p{color:var(--text-medium);font-size:.875rem;margin-bottom:var(--spacing-sm)}.publication-item a{color:var(--primary);text-decoration:none;font-size:.875rem}.publication-item a:hover{text-decoration:underline}@media(max-width:768px){.group-container{padding:var(--spacing-md)}.overview-container{grid-template-columns:repeat(2,1fr);gap:var(--spacing-md)}.stat-card{padding:var(--spacing-md)}.members-grid{grid-template-columns:1fr;gap:var(--spacing-md)}.members-grid .member-card{padding:var(--spacing-md);gap:var(--spacing-md)}.members-grid .member-card:hover{transform:translateY(-2px)}.members-grid .member-avatar{width:56px;height:56px;border-width:2px}.members-grid .member-avatar-initials{font-size:1.125rem}.members-grid .member-info h4{font-size:1rem}.members-grid .member-role{font-size:.813rem;padding:3px 8px}.members-grid .member-email{font-size:.813rem}.section-header{flex-direction:row;align-items:center;gap:var(--spacing-sm)}.section-header h3{font-size:1.125rem;flex:1;min-width:0}.section-header .btn{width:auto;white-space:nowrap;flex-shrink:0}.meetings-list{gap:var(--spacing-md)}.meeting-card,.dashboard-meeting-card{padding:var(--spacing-md)}.meeting-card:hover,.dashboard-meeting-card:hover{transform:translateY(-2px)}.meeting-card .meeting-header,.dashboard-meeting-card{flex-direction:column;align-items:flex-start;gap:var(--spacing-md)}.meeting-card .meeting-datetime{width:100%;flex-wrap:wrap}.meeting-card .meeting-title,.dashboard-meeting-info h4{font-size:1.0625rem;margin-bottom:var(--spacing-sm)}.meeting-card .meeting-description,.dashboard-meeting-description{font-size:.875rem}.meeting-card .btn,.dashboard-meeting-card .btn{width:100%;justify-content:center}.dashboard-meeting-icon{width:48px;height:48px}.dashboard-meeting-icon .material-icons{font-size:24px}.meeting-item{flex-direction:column;align-items:flex-start;gap:var(--spacing-md);padding:var(--spacing-md)}.meeting-item .meeting-time{flex-direction:row;width:100%;justify-content:flex-start}.meeting-actions{width:100%;flex-wrap:wrap;justify-content:flex-end}.meeting-actions .meeting-meta{flex:0 0 100%!important;margin-bottom:var(--spacing-sm)}.projects-grid{grid-template-columns:1fr;gap:var(--spacing-md);margin-top:var(--spacing-md)}.project-card{padding:var(--spacing-md)}.project-card:hover{transform:translateY(-2px)}.project-header,.project-header .project-title{display:block;margin-bottom:var(--spacing-sm)}.project-header h4{font-size:1.0625rem}.project-status{align-self:flex-start;font-size:.75rem;padding:5px 10px}.project-description{font-size:.813rem;margin:var(--spacing-sm) 0}.project-meta{flex-direction:column;gap:var(--spacing-xs);font-size:.813rem}.project-actions{flex-direction:column;align-items:stretch;gap:var(--spacing-sm)}.project-actions .btn{width:auto;justify-content:center}.publications-list{gap:var(--spacing-md)}.publication-card{padding:var(--spacing-md)}.publication-card:hover{transform:translateY(-2px)}.publication-header{flex-direction:column;align-items:flex-start;gap:var(--spacing-sm)}.publication-tags{width:100%}.publication-actions{align-self:flex-end}.publication-tag{font-size:.75rem;padding:5px 10px}.publication-card p{font-size:.875rem;line-height:1.6}}.error-message{color:var(--error);text-align:center;padding:var(--spacing-lg);background:var(--error-lighter);border-radius:8px;margin:var(--spacing-md) 0}.skeleton{background:linear-gradient(90deg,var(--bg-light) 25%,var(--bg-main) 50%,var(--bg-light) 75%);background-size:200% 100%;animation:loading 1.5s infinite}@keyframes loading{0%{background-position:200% 0}to{background-position:-200% 0}}.meeting-link-container{display:flex;gap:var(--spacing-sm);align-items:center;background:var(--bg-main);border-radius:12px}.meeting-input{flex:1;border:none;background:none;outline:none;color:var(--text-dark);font-size:.875rem}.meeting-input::placeholder{color:var(--text-medium)}.meeting-generate-btn{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);white-space:nowrap;border:1px solid var(--border-color);background:var(--bg-light);color:var(--text-dark);transition:all .2s ease}.meeting-generate-btn:hover{background:var(--primary);color:#fff;border-color:var(--primary)}.meeting-generate-btn .material-icons{font-size:18px}.meeting-generate-btn.success{background:var(--success);color:#fff;border-color:var(--success)}.group-details .detail-item{display:block}.group-details .detail-item span{display:block;font-weight:700;margin-bottom:10px}.issues-grid{display:flex;flex-direction:column;gap:var(--spacing-lg);margin-top:var(--spacing-md)}.issue-card{background:var(--bg-main);border:1px solid var(--border-color);border-radius:12px;padding:12px 20px}.issue-card:hover{transform:translateY(-2px);box-shadow:0 4px 8px #0000001a;transition:all .2s ease}.issue-header h4{font-size:1.05rem}.issue-meta{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px;font-size:.875rem}.issue-type{background:var(--primary-lighter);color:var(--primary);padding:0 5px;border:1px solid rgba(0,0,0,.1);border-radius:4px}.issue-type.issue{background:#ff00001a;color:red;opacity:.5}.issue-type.event{background:#00ff001a;color:green;opacity:.5}.issue-type.hide{display:none}.issue-card .issue-footer{display:flex;justify-content:flex-end;margin-top:var(--spacing-md)}.page-header .issue-header{width:100%}.issue-details{display:flex;flex-direction:column;gap:var(--spacing-md);padding:var(--spacing-md)}.page-header .issue-header .issue-footer{display:flex;justify-content:flex-end;gap:var(--spacing-sm);margin-top:var(--spacing-md);border-top:1px solid rgba(0,0,0,.1);padding-top:var(--spacing-md)}#issue-date-time{display:none}.issue-comments-grid{display:flex;flex-direction:column;gap:var(--spacing-md);margin-top:var(--spacing-md)}.issue-comment-card{border:1px solid rgba(0,0,0,.1);border-radius:8px;padding:var(--spacing-md)}.issue-comment-card:hover{transform:translateY(-2px);box-shadow:0 4px 8px #0000001a;transition:all .2s ease}.issue-comment-card .issue-comment-header{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-sm);font-size:.875rem}.issue-comment-card .issue-comment-user{display:flex;align-items:center;gap:var(--spacing-xs);font-size:.875rem;color:#00000080}.issue-comment-card .issue-comment-user .material-icons{font-size:16px}.issue-comment-card .issue-comment-description{margin:var(--spacing-md) 0;font-size:1rem;line-height:1.1}.issue-comment-card .issue-comment-description li ul{margin-top:10px}.issue-comment-card .issue-comment-footer{display:flex;justify-content:flex-end;gap:var(--spacing-sm)}.project-detail-page{min-height:100vh}.project-header-section{border-bottom:1px solid var(--border-color);padding:var(--spacing-xl) var(--spacing-lg)}.project-header-content{max-width:1400px;margin:0 auto}.project-title-section{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--spacing-lg);margin-bottom:var(--spacing-lg);flex-wrap:wrap}.project-title-section h1{font-size:2rem;font-weight:600;color:var(--text-dark);margin:0;line-height:1.3;flex:1;min-width:0}.project-title-actions{display:flex;gap:var(--spacing-sm);flex-shrink:0}.project-meta-badges{display:flex;gap:var(--spacing-sm);flex-wrap:wrap;align-items:center}.project-meta-badge{padding:6px 14px;border-radius:20px;font-size:.813rem;font-weight:600;text-transform:capitalize;border:1px solid}.project-meta-badge.status{background:var(--bg-light);color:var(--text-medium);border-color:var(--border-color)}.project-meta-badge.status-active{background:var(--success-lighter);color:var(--success);border-color:var(--success)}.project-meta-badge.status-planning{background:var(--warning-lighter);color:var(--warning);border-color:var(--warning)}.project-meta-badge.status-completed{background:var(--primary-lighter);color:var(--primary);border-color:var(--primary)}.project-meta-badge.status-on-hold{background:#ff98001a;color:#ff9800;border-color:#ff9800}.project-meta-badge.type{background:#ff7d7d1a;color:#ff7d7d;border-color:#ff7d7d4d}.project-progress-section{margin-top:var(--spacing-md)}.project-progress-label{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-xs);font-size:.875rem;color:var(--text-medium)}.project-progress-bar-container{width:100%;height:8px;background:var(--bg-light);border:1px solid var(--border-color);border-radius:4px;overflow:hidden}.project-progress-bar{height:100%;background:linear-gradient(90deg,var(--primary),var(--primary-dark));border-radius:4px;transition:width .5s ease}.project-tabs{max-width:1400px;width:100%;margin:0 auto;border-bottom:2px solid var(--border-color);display:flex;gap:0;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;-webkit-overflow-scrolling:touch}.project-tabs::-webkit-scrollbar{display:none}.project-tab{padding:var(--spacing-md) var(--spacing-lg);background:none;border:none;border-bottom:3px solid transparent;color:var(--text-medium);font-size:.9375rem;font-weight:500;cursor:pointer;transition:all .2s ease;white-space:nowrap;display:flex;align-items:center;gap:var(--spacing-xs);position:relative}.project-tab:hover{color:var(--primary);background:var(--bg-light)}.project-tab.active{color:var(--primary);border-bottom-color:var(--primary);background:var(--bg-light)}.project-tab .material-icons{font-size:1.125rem}.project-tab .tab-count{display:inline;position:static;margin-left:4px;font-size:.75rem;opacity:.7;color:inherit;background:none;padding:0;border-radius:0;box-shadow:none;font-weight:400;line-height:inherit;text-align:left;min-width:auto;text-indent:0}.project-tab-content{max-width:1400px;margin:0 auto;padding:var(--spacing-xl) var(--spacing-lg)}.tab-panel{display:none}.tab-panel.active{display:block;animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.content-section{background:var(--bg-main);border:1px solid var(--border-color);border-radius:12px;margin-bottom:var(--spacing-lg);overflow:hidden}.project-detail-page .section-header{padding:var(--spacing-md);border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-md);background:var(--bg-light)}.project-detail-page .section-header h2{margin:0;font-size:1.25rem;font-weight:600;color:var(--text-dark);display:flex;align-items:center;gap:var(--spacing-sm)}.project-detail-page .section-header h2 .material-icons{font-size:1.5rem;color:var(--primary)}.project-detail-page .section-body{padding:var(--spacing-md)!important}.project-detail-page .items-list{padding:0!important;border:none!important;margin:0!important;background:none!important;box-shadow:none!important}.project-detail-page .info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-lg);margin-bottom:var(--spacing-lg)}.project-detail-page .info-item{display:flex;flex-direction:column;gap:var(--spacing-xs);padding:var(--spacing-md);background:var(--bg-light);border-radius:var(--border-radius-sm);border:1px solid var(--border-color);transition:all .2s ease}.project-detail-page .info-item:hover{background:var(--bg-main);border-color:var(--primary);box-shadow:0 2px 8px #0000000d}.project-detail-page .info-label{font-size:.75rem;color:var(--text-medium);font-weight:600;text-transform:uppercase;letter-spacing:.5px;margin-bottom:var(--spacing-xs)}.project-detail-page .info-value{font-size:1rem;color:var(--text-dark);font-weight:500;line-height:1.5;word-wrap:break-word}.project-detail-page .info-value.lead{color:var(--primary);font-weight:600;font-size:1.0625rem}.project-detail-page .info-value a{min-width:0}.project-detail-page .info-value a>svg{flex-shrink:0}.project-detail-page .info-value a>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;flex:1}.project-detail-page .section-body>div:not(.info-grid){margin-top:var(--spacing-lg);padding:var(--spacing-lg);background:var(--bg-light);border-radius:var(--border-radius-sm);border:1px solid var(--border-color);transition:all .2s ease}.project-detail-page .section-body>div:not(.info-grid):hover{background:var(--bg-main);border-color:var(--primary);box-shadow:0 2px 8px #0000000d}.project-detail-page .section-body>div:not(.info-grid) .info-label{margin-bottom:var(--spacing-sm);font-size:.75rem;color:var(--text-medium);font-weight:600;text-transform:uppercase;letter-spacing:.5px}.project-detail-page .section-body>div:not(.info-grid) .info-value{line-height:1.7;color:var(--text-dark);font-size:.938rem;word-wrap:break-word}.project-detail-page .contributors-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:var(--spacing-md);padding:0!important;border:none!important;margin:0!important;background:none!important;box-shadow:none!important}.project-detail-page .contributor-item{display:flex;flex-direction:row;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);background:var(--bg-light);border:1px solid var(--border-color);border-radius:10px;transition:all .2s ease}.project-detail-page .contributor-item:hover{border-color:var(--primary);background:var(--bg-main);transform:translateY(-2px);box-shadow:0 2px 8px #00000014}.project-detail-page .contributor-avatar{width:48px;height:48px;border-radius:50%;object-fit:cover;border:2px solid var(--border-color);flex-shrink:0}.project-detail-page .contributor-details{min-width:0;gap:0;flex:1 1 auto}.contributor-name{font-weight:600;color:var(--text-dark);font-size:.9375rem;margin-bottom:2px}.contributor-role{font-size:.813rem;color:var(--text-medium);margin-bottom:2px}.contributor-date{font-size:.75rem;color:var(--text-light)}.contributor-actions{display:flex;gap:var(--spacing-xs);flex-shrink:0}.items-list{display:flex;flex-direction:column;gap:var(--spacing-md)}.item-card{padding:var(--spacing-lg);background:var(--bg-light);border:1px solid var(--border-color);border-radius:10px;transition:all .2s ease}.item-card:hover{border-color:var(--primary);background:var(--bg-main);box-shadow:0 2px 8px #00000014}.item-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--border-color);flex-wrap:wrap;gap:var(--spacing-sm)}.item-meta{display:flex;align-items:center;gap:var(--spacing-sm);flex-wrap:wrap}.item-number{background:var(--primary-lighter);color:var(--primary);padding:4px 10px;border-radius:6px;font-size:.813rem;font-weight:600}.item-date,.item-author{font-size:.813rem;color:var(--text-medium)}.item-status{color:#fff;padding:4px 12px;border-radius:12px;font-size:.75rem;font-weight:600;background-color:var(--status-color, #9e9e9e)}.item-type{margin-left:8px;padding:4px 12px;background-color:var(--bg-light);border:1px solid var(--border-color);border-radius:15px;font-size:.75rem;color:var(--text-medium)}.item-content .publication-title{margin:0 0 8px;font-size:1.125rem;font-weight:600}.item-content .publication-text{margin:0 0 8px;color:var(--text-medium);font-size:.875rem;display:flex;align-items:center;gap:6px}.item-content .publication-text .material-icons{font-size:1rem;color:var(--text-medium);opacity:.7;flex-shrink:0}.item-content .publication-text-small{margin:0 0 4px;color:var(--text-medium);font-size:.813rem;display:flex;align-items:center;gap:6px}.item-content .publication-text-small .material-icons{font-size:.938rem;color:var(--text-medium);opacity:.7;flex-shrink:0}.item-content .publication-link{color:var(--primary)}.item-content .publication-notes{margin:8px 0 0;color:var(--text-medium);font-size:.875rem;font-style:italic}.item-content{color:var(--text-dark);line-height:1.7;font-size:.9375rem;margin-bottom:var(--spacing-md)}.item-content h1,.item-content h2,.item-content h3,.item-content h4,.item-content h5,.item-content h6{margin-top:var(--spacing-lg);margin-bottom:var(--spacing-md);font-weight:600;line-height:1.3;color:var(--text-dark)}.item-content h1{font-size:2rem;border-bottom:2px solid var(--border-color);padding-bottom:var(--spacing-xs)}.item-content h2{font-size:1.5rem;border-bottom:1px solid var(--border-color);padding-bottom:var(--spacing-xs)}.item-content h3{font-size:1.25rem}.item-content h4{font-size:1.125rem}.item-content h5{font-size:1rem}.item-content h6{font-size:.9375rem;color:var(--text-medium)}.item-content p{margin-bottom:var(--spacing-md)}.item-content p:last-child{margin-bottom:0}.item-content ul,.item-content ol{margin-bottom:var(--spacing-md);padding-left:var(--spacing-xl)}.item-content ul{list-style-type:disc}.item-content ol{list-style-type:decimal}.item-content li{margin-bottom:var(--spacing-xs)}.item-content li>ul,.item-content li>ol{margin-top:var(--spacing-xs);margin-bottom:var(--spacing-xs)}.item-content a{color:var(--primary-dark);text-decoration:none;border-bottom:1px solid transparent;transition:border-color .2s ease}.item-content a:hover{border-bottom-color:var(--primary-dark)}.item-content code{background:var(--bg-light);border:1px solid var(--border-color);border-radius:4px;padding:2px 6px;font-size:.875em;font-family:Monaco,Menlo,Ubuntu Mono,Consolas,source-code-pro,monospace;color:var(--primary-dark)}.item-content pre{background:var(--bg-light);border:1px solid var(--border-color);border-radius:var(--border-radius-sm);padding:var(--spacing-md);overflow-x:auto;margin-bottom:var(--spacing-md);line-height:1.5}.item-content pre code{background:transparent;border:none;padding:0;font-size:.875rem;color:var(--text-dark)}.item-content blockquote{border-left:4px solid var(--primary);padding-left:var(--spacing-md);margin:var(--spacing-md) 0;color:var(--text-medium);font-style:italic;background:var(--bg-light);padding:var(--spacing-md);border-radius:0 var(--border-radius-sm) var(--border-radius-sm) 0}.item-content blockquote p{margin-bottom:var(--spacing-xs)}.item-content blockquote p:last-child{margin-bottom:0}.item-content table{width:100%;border-collapse:collapse;margin-bottom:var(--spacing-md);border:1px solid var(--border-color);border-radius:var(--border-radius-sm);overflow:hidden}.item-content thead{background:var(--bg-light)}.item-content th{padding:var(--spacing-sm) var(--spacing-md);text-align:left;font-weight:600;color:var(--text-dark);border-bottom:2px solid var(--border-color)}.item-content td{padding:var(--spacing-sm) var(--spacing-md);border-bottom:1px solid var(--border-color)}.item-content tbody tr:last-child td{border-bottom:none}.item-content tbody tr:hover{background:var(--bg-light)}.item-content img{max-width:100%;height:auto;border-radius:var(--border-radius-sm);margin:var(--spacing-md) 0;border:1px solid var(--border-color)}.item-content hr{border:none;border-top:2px solid var(--border-color);margin:var(--spacing-lg) 0}.item-content strong{font-weight:600;color:var(--text-dark)}.item-content em{font-style:italic}.item-content del{text-decoration:line-through;color:var(--text-medium)}.item-content mark{background:var(--warning-lighter);padding:2px 4px;border-radius:3px}.item-actions{display:flex;gap:var(--spacing-sm);justify-content:flex-end;padding-top:var(--spacing-md);border-top:1px solid var(--border-color)}.empty-state{padding:var(--spacing-xl);text-align:center;color:var(--text-medium)}.empty-state .material-icons{font-size:3rem;color:var(--text-light);margin-bottom:var(--spacing-md);opacity:.4}.empty-state p{font-size:.9375rem;margin:0}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.project-detail-page .stat-card{background:var(--bg-main);border:1px solid var(--border-color);border-radius:10px;padding:var(--spacing-md);text-align:center;transition:all .2s ease}.project-detail-page .stat-card:hover{border-color:var(--primary);transform:translateY(-2px);box-shadow:0 4px 12px #00000014}.project-detail-page .stat-value{font-size:2rem!important;font-weight:700;color:var(--primary);margin-bottom:var(--spacing-xs);line-height:1.2;text-indent:0!important}.project-detail-page .stat-label{font-size:.813rem!important;color:var(--text-medium)!important;text-transform:uppercase;letter-spacing:.5px;font-weight:500;line-height:1.4;text-indent:0!important}.outline-editor{gap:var(--spacing-sm)}.outline-editor__header{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-sm)}.outline-preview-hint{color:var(--text-medium);font-size:.875rem}.outline-editor__grid{display:grid;grid-template-columns:minmax(0,var(--outline-split, 55%)) 10px minmax(0,calc(100% - var(--outline-split, 55%)));gap:var(--spacing-sm);align-items:stretch}.outline-editor__grid textarea.form-control{resize:none;box-sizing:border-box}.outline-resize-handle{display:flex;align-items:center;justify-content:center;cursor:col-resize;background:var(--bg-light);border:1px solid var(--border-color);border-radius:8px;transition:background .2s ease,border-color .2s ease}.outline-resize-handle:hover,.outline-resize-handle:active{background:var(--bg-main);border-color:var(--primary)}.outline-resize-grip{width:2px;height:32px;background:var(--border-color);border-radius:4px}.outline-preview{border:1px solid var(--border-color);border-radius:10px;background:var(--bg-main);padding:var(--spacing-xs) var(--spacing-sm);height:100%;overflow-y:auto;overflow-x:hidden}.outline-preview-content{color:var(--text-dark);font-size:.813rem;line-height:1.5}.outline-preview-content h1{font-size:1.25rem;margin-top:var(--spacing-xs);margin-bottom:var(--spacing-xs)}.outline-preview-content h2{font-size:1.125rem;margin-top:var(--spacing-xs);margin-bottom:var(--spacing-xs)}.outline-preview-content h3{font-size:1rem;margin-top:var(--spacing-xs);margin-bottom:var(--spacing-xs)}.outline-preview-content h4,.outline-preview-content h5,.outline-preview-content h6{font-size:.938rem;margin-top:var(--spacing-xs);margin-bottom:var(--spacing-xs)}.outline-preview-content p{margin:var(--spacing-xs) 0}.outline-preview-content ul,.outline-preview-content ol{margin:var(--spacing-xs) 0;padding-left:var(--spacing-md)}.outline-preview-content li{margin:2px 0}.outline-preview-content blockquote{margin:var(--spacing-xs) 0;padding:var(--spacing-xs) var(--spacing-sm);border-left-width:3px}.outline-preview-content pre{margin:var(--spacing-xs) 0;padding:var(--spacing-xs);font-size:.75rem}.outline-preview-content code{font-size:.75rem;padding:2px 4px}.outline-preview-content table{margin:var(--spacing-xs) 0;font-size:.75rem}.outline-preview-content th,.outline-preview-content td{padding:4px 8px}.outline-preview-empty{color:var(--text-light);margin:0;font-size:.938rem}@media(max-width:1024px){.outline-editor__grid{grid-template-columns:1fr!important}.outline-resize-handle{display:none}}@media(max-width:1024px){.project-header-content,.project-tabs,.project-tab-content{max-width:100%;padding-left:var(--spacing-md);padding-right:var(--spacing-md)}.project-title-section h1{font-size:1.75rem}.project-detail-page .contributors-list{grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}}@media(max-width:1024px)and (min-width:769px){.stats-grid{grid-template-columns:repeat(3,1fr)}.project-detail-page .info-grid{grid-template-columns:repeat(2,1fr)}.project-detail-page .info-item{padding:var(--spacing-sm)}}@media(max-width:768px){.project-header-section{padding:var(--spacing-lg) var(--spacing-md)}.project-header-content{padding:0}.project-title-section{margin-bottom:var(--spacing-md)}.project-title-section h1{font-size:1.5rem}.project-meta-badges{margin-bottom:var(--spacing-sm)}.project-progress-section{margin-top:var(--spacing-sm)}.project-tabs{width:100%;max-width:100%;padding:0;margin:0;border-bottom-width:1px;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:var(--border-color) transparent}.project-tabs::-webkit-scrollbar{display:block;height:4px}.project-tabs::-webkit-scrollbar-track{background:transparent}.project-tabs::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:2px}.project-tab{padding:var(--spacing-sm);font-size:0!important;line-height:0;gap:0;flex-shrink:0;min-width:fit-content;width:44px;height:44px;justify-content:center;align-items:center;border-radius:var(--border-radius-sm) var(--border-radius-sm) 0 0;overflow:visible;text-indent:-9999px;position:relative}.project-tab .material-icons{font-size:1.5rem!important;line-height:1;margin:0;text-indent:0}.project-tab .tab-count{display:inline-block!important;position:absolute;top:.25rem;right:.75rem;background:var(--primary);color:#fff!important;font-size:.625rem!important;font-weight:600;line-height:1;padding:4px;border-radius:100%;min-width:16px;text-align:center;text-indent:0;box-shadow:0 1px 3px #0003;margin-left:0;opacity:1}.project-tab:before,.project-tab:after{display:none}.project-tab-content{padding:var(--spacing-lg) var(--spacing-md)}.content-section{border-radius:var(--border-radius-sm);margin-bottom:var(--spacing-md)}.project-detail-page .section-header{padding:var(--spacing-md);flex-wrap:wrap}.project-detail-page .section-header h2{font-size:1rem}.project-detail-page .section-body{padding:var(--spacing-xs)!important}.project-detail-page .info-grid{grid-template-columns:1fr;gap:var(--spacing-md)}.project-detail-page .info-item{padding:var(--spacing-sm)}.project-detail-page .info-label{font-size:.688rem}.project-detail-page .info-value{font-size:.938rem}.project-detail-page .info-value.lead{font-size:1rem}.project-detail-page .contributors-list{grid-template-columns:1fr;gap:var(--spacing-sm)}.project-detail-page .contributor-item{padding:var(--spacing-md);flex-wrap:nowrap;align-items:center;gap:var(--spacing-md)}.project-detail-page .contributor-avatar{width:48px;height:48px}.project-detail-page .stats-grid{grid-template-columns:repeat(2,1fr);gap:var(--spacing-sm)}.project-detail-page .stat-card{padding:var(--spacing-sm)}.project-detail-page .stat-value{font-size:1.5rem!important;text-indent:0!important;line-height:1.2!important}.project-detail-page .stat-label{font-size:.75rem!important;text-indent:0!important;line-height:1.4!important}.items-list{gap:var(--spacing-sm)}.item-card{padding:var(--spacing-md)}.item-header{flex-direction:column;align-items:flex-start;gap:var(--spacing-xs);margin-bottom:var(--spacing-sm);padding-bottom:var(--spacing-sm)}.item-meta{width:100%}.item-content{font-size:.875rem;line-height:1.6}.item-content h1{font-size:1.5rem;margin-top:var(--spacing-md)}.item-content h2{font-size:1.25rem}.item-content h3{font-size:1.125rem}.item-content h4,.item-content h5,.item-content h6{font-size:1rem}.item-content pre{padding:var(--spacing-sm);font-size:.813rem;overflow-x:auto}.item-content table{font-size:.875rem;display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}.item-content th,.item-content td{padding:var(--spacing-xs) var(--spacing-sm)}.item-actions{flex-wrap:wrap;gap:var(--spacing-xs)}}@media(max-width:480px){.project-header-section{padding:var(--spacing-md) var(--spacing-sm)}.project-title-section{flex-direction:column;align-items:flex-start;gap:var(--spacing-sm)}.project-title-section h1{font-size:1.25rem;width:100%}.project-title-actions{flex-wrap:wrap;gap:var(--spacing-xs)}.project-meta-badges{gap:var(--spacing-xs)}.project-meta-badge{font-size:.75rem;padding:4px 10px}.project-tabs{width:100%;max-width:100%;padding:0;margin:0;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch}.project-tab{padding:var(--spacing-xs);font-size:0!important;line-height:0;gap:0;flex-shrink:0;min-width:fit-content;width:40px;height:40px;justify-content:center;align-items:center;border-radius:var(--border-radius-sm) var(--border-radius-sm) 0 0;overflow:visible;text-indent:-9999px;position:relative}.project-tab .material-icons{font-size:1.5rem!important;line-height:1;padding:1rem .5rem;margin:0;text-indent:0}.project-tab .tab-count{display:inline-block!important;position:absolute;top:.25rem;right:.75rem;background:var(--primary);color:#fff!important;font-size:.563rem!important;font-weight:600;line-height:1;padding:3px;border-radius:100%;min-width:14px;text-align:center;text-indent:0;box-shadow:0 1px 2px #0003;margin-left:0;opacity:1}.project-tab:before,.project-tab:after{display:none}.project-tab-content{padding:var(--spacing-md) var(--spacing-sm)}.project-detail-page .section-header{padding:var(--spacing-sm);flex-wrap:wrap;gap:var(--spacing-sm)}.project-detail-page .section-header h2{font-size:.938rem}.project-detail-page .section-header .btn{flex-shrink:0;padding:var(--spacing-xs) var(--spacing-sm)}.project-detail-page .section-body{padding:var(--spacing-xs)!important}.stats-grid{grid-template-columns:repeat(2,1fr);gap:var(--spacing-xs)}.project-detail-page .stat-value{font-size:1.75rem!important;text-indent:0!important;line-height:1.2!important}.project-detail-page .stat-label{font-size:.75rem!important;text-indent:0!important;line-height:1.4!important}.project-detail-page .contributor-item{align-items:center;text-align:inherit;gap:var(--spacing-md);flex-wrap:nowrap;padding:var(--spacing-md)}.project-detail-page .contributor-details{width:auto;gap:0;flex:1 1 auto}.project-detail-page .contributor-actions{width:auto;justify-content:flex-start}.item-content{font-size:.813rem}.item-content h1{font-size:1.25rem}.item-content h2{font-size:1.125rem}.item-content h3{font-size:1rem}.item-content ul,.item-content ol{padding-left:var(--spacing-lg)}.item-content blockquote{padding:var(--spacing-sm);margin:var(--spacing-sm) 0}.item-actions{flex-wrap:wrap;gap:var(--spacing-xs)}.empty-state{padding:var(--spacing-lg) var(--spacing-md)}.empty-state .material-icons{font-size:2rem}}@media(min-width:1400px){.project-header-content,.project-tabs,.project-tab-content{max-width:1600px}}.project-detail-page .student-grade-header{cursor:pointer;transition:all .2s ease;border-bottom:none;padding-bottom:0;margin-bottom:0}.project-detail-page .student-grade-header.expanded{border-bottom:1px solid var(--border-color);margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-md)}.project-detail-page .student-grade-header-content{display:flex;align-items:center;gap:var(--spacing-sm);width:100%}.project-detail-page .student-grade-chevron{font-size:1.25rem;transition:transform .2s}.project-detail-page .student-grade-chevron.expanded{transform:rotate(90deg)}.project-detail-page .student-grade-name{margin:0;flex:1}.project-detail-page .student-grade-total{font-weight:600;color:var(--primary)}.project-detail-page .student-grades-list{display:flex;flex-direction:column;gap:var(--spacing-md)}.project-detail-page .student-grade-item{padding:var(--spacing-md);border:1px solid var(--border-color);border-radius:var(--border-radius);background-color:var(--bg-secondary)}.project-detail-page .student-grade-item-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--spacing-xs)}.project-detail-page .student-grade-item-title{display:flex;align-items:center;gap:var(--spacing-sm)}.project-detail-page .student-grade-item-title strong{font-weight:600}.project-detail-page .student-grade-item-score{margin-left:var(--spacing-sm);font-weight:600;color:var(--primary)}.project-detail-page .student-grade-item-date{font-size:.875rem;color:var(--text-medium)}.project-detail-page .student-grade-item-instructor{font-size:.875rem;color:var(--text-medium);margin-bottom:var(--spacing-xs)}.project-detail-page .student-grade-item-feedback{margin-top:var(--spacing-sm)}.project-detail-page .student-grade-item-feedback strong{font-weight:600}.project-detail-page .student-grade-item-feedback p{margin-top:var(--spacing-xs);white-space:pre-wrap;font-size:.875rem}.project-detail-page .student-grade-item-actions{display:flex;gap:var(--spacing-xs);margin-top:var(--spacing-sm)}@media print{.project-header-section{page-break-after:avoid}.project-tabs{display:none}.tab-panel{display:block!important;page-break-inside:avoid}.item-card{page-break-inside:avoid;border:1px solid #ccc}.item-actions{display:none}}.meetings-list,.projects-list{display:flex;flex-direction:column;gap:var(--spacing-md);margin-top:var(--spacing-lg)}.meeting-card{background:var(--bg-main);border:1px solid var(--border-color);border-radius:16px;padding:var(--spacing-lg);transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 1px 3px #0000000d;position:relative;overflow:hidden}.meeting-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:linear-gradient(180deg,var(--primary),var(--primary-dark));opacity:0;transition:opacity .3s ease}.meeting-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0000001f,0 2px 8px #00000014;border-color:var(--primary)}.meeting-card:hover:before{opacity:1}.meeting-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md);gap:var(--spacing-md);flex-wrap:wrap}.meeting-header .buttons{display:flex;align-items:center;gap:var(--spacing-sm)}.meeting-header .buttons .button{text-decoration:none;padding:2px 8px}.meeting-header .buttons .button:hover{transform:translateY(-1px)}.meeting-datetime{display:flex;align-items:center;gap:var(--spacing-sm);color:var(--text-medium);font-weight:500;font-size:.875rem;flex-wrap:wrap}.meeting-datetime .material-icons{font-size:20px;color:var(--primary);opacity:.9;flex-shrink:0}.meeting-date{font-weight:600;color:var(--text-dark);font-size:.9375rem}.meeting-datetime .meeting-time{color:var(--text-dark);font-size:.8rem;font-weight:600;padding:2px 8px;border-radius:12px;border:1px solid var(--border-color);background:var(--bg-light);margin-left:var(--spacing-xs);white-space:nowrap;display:inline-block;transition:all .2s ease}.meeting-title{margin:0 0 var(--spacing-md);color:var(--text-dark);font-size:1.25rem;font-weight:600;line-height:1.5}.meeting-description{color:var(--text-medium);margin:0;line-height:1.7;font-size:.9375rem}.meeting-card .btn{flex-shrink:0;padding:var(--spacing-xs) var(--spacing-md);font-weight:600;font-size:.875rem;border-radius:10px;box-shadow:0 2px 6px #9d9dbd33;transition:all .2s ease}.meeting-card .btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #9d9dbd4d}.meeting-card .btn .material-icons{font-size:18px;margin-right:4px}#meetingDescription{resize:vertical}.meeting-actions{display:flex;justify-content:flex-end;gap:var(--spacing-sm);margin-top:var(--spacing-md)}.meeting-actions .meeting-meta{flex:1}.meeting-actions .meeting-meta span{background-color:var(--bg-light);padding:6px 12px;border-radius:12px;font-size:.75rem;font-weight:600;color:var(--text-dark);border:1px solid var(--border-color);text-transform:capitalize;white-space:nowrap;display:inline-block;transition:all .2s ease}.meeting-actions .meeting-meta span.general{background-color:#a6ee7d26;color:#4caf50;border-color:#4caf504d}.meeting-actions .meeting-meta span.staff{background-color:#ee7d7d26;color:#f44336;border-color:#f443364d}.meeting-actions .meeting-meta span.group{background-color:#7d7fee26;color:#5c6bc0;border-color:#5c6bc04d}.meeting-actions .meeting-meta span.admin{background-color:#ff980026;color:#ff9800;border-color:#ff98004d}.meeting-participants .participant .participant-img{width:24px;height:24px;border-radius:50%;cursor:pointer;border:1px solid rgba(0,0,0,.3)}.meeting-participants .participant{position:relative}.meeting-participants .participant:hover{transform:translateY(-2px);transition:transform .3s ease}.meeting-participants .participant:hover .participant-img{box-shadow:0 2px 6px #0009}.meeting-participants .participant .participant-name{position:absolute;top:-15px;left:0;transform:translate(-70%,-50%);opacity:0;transition:opacity .3s ease;font-size:.875rem;border:1px solid rgba(0,0,0,.4);background:var(--bg-light);padding:2px 8px;border-radius:4px;white-space:nowrap}.meeting-participants .participant:hover .participant-name{opacity:1}.meeting-participants{display:flex;gap:var(--spacing-xs);position:relative}.more-participants .more{width:24px;height:24px;cursor:pointer;display:flex;justify-content:center;align-items:center;border-radius:2px}.more-participants .more:hover{transform:translateY(-2px);transition:transform .3s ease;box-shadow:0 2px 6px #0009}.more-participants .more-participants-list{display:none;flex-direction:column;position:absolute;top:30px;right:0;background:#fff;border:1px solid rgba(0,0,0,.4);border-radius:4px;padding:5px 10px;box-shadow:0 2px 6px #0003;z-index:1000000;transition:all .3s ease;font-size:.9rem;color:#000000b3;text-wrap:nowrap;opacity:1}.more-participants .more-participants-list.show{display:flex}.more-participants .more-participants-list.hide{display:none}.empty-state .material-icons{font-size:48px;margin-bottom:var(--spacing-md)}.meeting-item{background:var(--bg-main);border:1px solid var(--border-color);border-radius:12px;padding:var(--spacing-md);margin-bottom:var(--spacing-md)}.meeting-card.past{opacity:.7;background:var(--bg-light)}.meeting-item.past{opacity:.7}.meeting-item .meeting-time{display:flex;align-items:center;gap:var(--spacing-xs);color:var(--text-medium);text-wrap:nowrap}.meeting-item .meeting-time .material-icons{font-size:18px}.meeting-item .meeting-time .meeting-date{margin-right:var(--spacing-xs)}.meeting-info h4{margin:0 0 var(--spacing-xs);color:var(--text-dark)}.meeting-info p{color:var(--text-medium);margin:0}.meeting-actions{display:flex;gap:var(--spacing-sm);margin-top:var(--spacing-md)}.meeting-link{display:inline-flex;align-items:center;gap:var(--spacing-xs);padding:6px 12px;background:var(--bg-light);border-radius:6px;color:var(--text-medium);font-size:.875rem}.checkbox-table{width:100%;border-collapse:collapse;border:1px solid var(--border-color);border-radius:var(--border-radius);overflow:hidden;background:var(--bg-main);font-family:sans-serif}.checkbox-table th,.checkbox-table td{padding:12px 16px;text-align:left;vertical-align:middle;border-bottom:1px solid var(--border-color)}.checkbox-table tbody tr:last-child td{border-bottom:none}.checkbox-table tbody tr:hover{background-color:var(--bg-light);transition:background-color .15s ease}.checkbox-header{background-color:#f0f0f0;font-weight:700;border-bottom:2px solid #c7c4c48f}.checkbox-header th{color:var(--text-dark);font-size:.875rem;text-transform:uppercase;letter-spacing:.5px;font-weight:600}.attendance-container{width:100%;display:flex;flex-direction:column;border:1px solid var(--border-color);border-radius:var(--border-radius);overflow:hidden;background:var(--bg-main)}.attendance-header{display:flex;flex-direction:column;background-color:#f0f0f0;border-bottom:1px solid #c7c4c48f}.attendance-header-labels{display:grid;grid-template-columns:50px 50px 80px 300px 1fr;gap:0;padding:8px 5px;font-weight:700;font-size:.8125rem;text-transform:uppercase}.attendance-label{padding:0 5px;text-align:center}.attendance-label:nth-child(4),.attendance-label:nth-child(5){text-align:left}.attendance-body{display:flex;flex-direction:column}.attendance-row{display:grid;grid-template-columns:50px 50px 80px 300px 1fr;gap:0;padding:8px 5px;border-bottom:1px solid var(--border-color);transition:background-color .15s ease;align-items:center}.attendance-row:last-child{border-bottom:none}.attendance-row:hover{background-color:var(--bg-light)}.attendance-cell{padding:0 5px;display:flex;align-items:center;min-height:32px}.checkbox-cell{justify-content:center}.attendee-cell{font-size:.875rem;color:var(--text-dark)}.excuse-cell{font-size:.875rem}.excuse-content{padding:8px 12px;background:var(--primary-lighter);border-radius:var(--border-radius-sm);border-left:3px solid var(--primary);width:100%}.excuse-reason{color:var(--text-dark);font-weight:500;margin-bottom:4px;line-height:1.4}.excuse-time{color:var(--text-medium);font-size:.75rem}.excuse-empty{color:var(--text-light);font-style:italic}.attendance-row input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:var(--primary);border-radius:3px;outline:none}.attendance-row input[type=checkbox]:focus{outline:none;box-shadow:none}@media(max-width:768px){.meeting-header{flex-wrap:wrap;gap:var(--spacing-sm)}.meeting-datetime{text-wrap:nowrap}.meeting-actions{flex-direction:row;flex-wrap:wrap;gap:var(--spacing-sm)}.meeting-actions .btn{flex:1;min-width:auto}.attendance-header-labels{display:none}.attendance-row{display:flex;flex-wrap:wrap;padding:12px;margin-bottom:12px;border:1px solid var(--border-color);border-radius:var(--border-radius-sm);background:var(--bg-main);gap:12px;column-gap:25px;row-gap:8px}.attendance-row:last-child{margin-bottom:0}.attendance-cell{padding:0;display:flex;align-items:flex-start}.attendance-row .checkbox-cell:nth-child(1),.attendance-row .checkbox-cell:nth-child(2),.attendance-row .checkbox-cell:nth-child(3){display:flex;flex-direction:row;align-items:center;gap:8px;padding:0;width:auto;flex:0 0 auto;border-bottom:none}.attendance-row .checkbox-cell:nth-child(1):before{content:"Yes?";font-weight:600;color:var(--text-medium);font-size:.8125rem}.attendance-row .checkbox-cell:nth-child(2):before{content:"No?";font-weight:600;color:var(--text-medium);font-size:.8125rem}.attendance-row .checkbox-cell:nth-child(3):before{content:"Excused?";font-weight:600;color:var(--text-medium);font-size:.8125rem}.attendance-row .attendee-cell,.attendance-row .excuse-cell{width:100%;display:flex;flex-wrap:wrap}.attendee-cell{font-weight:600;font-size:.9375rem;color:var(--text-dark);padding:8px 0;border-bottom:1px solid var(--border-color)}.excuse-cell{padding:8px 0}.excuse-cell:has(>.excuse-empty){display:none}.excuse-cell:has(>.excuse-content):before{content:"Excuse Reason: ";font-weight:600;color:var(--text-medium);font-size:.8125rem;display:block;margin-bottom:8px}.excuse-content{width:100%;margin-top:4px}}.people-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:var(--spacing-lg);margin-top:var(--spacing-lg)}.people-card{background:var(--bg-main);border:1px solid var(--border-color);border-radius:16px;padding:var(--spacing-lg);transition:transform .3s cubic-bezier(.4,0,.2,1),box-shadow .3s cubic-bezier(.4,0,.2,1),border-color .3s cubic-bezier(.4,0,.2,1);box-shadow:0 1px 3px #0000000d;position:relative;overflow:hidden}.people-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:linear-gradient(180deg,var(--primary),var(--primary-dark));opacity:0;transition:opacity .3s ease}.people-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0000001f,0 2px 8px #00000014;border-color:var(--primary)}.people-card:hover:before{opacity:1}.people-card.flagged{border-color:#ff190075}.people-card.flagged:before{background:linear-gradient(180deg,#ff1900,#cc1400)}.people-header{display:flex;align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.people-avatar{width:64px;height:64px;background:var(--primary-lighter);color:var(--primary);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:600;flex-shrink:0;border:3px solid var(--primary-lighter);transition:all .3s cubic-bezier(.4,0,.2,1)}.people-card:hover .people-avatar{border-color:var(--primary);transform:scale(1.05);box-shadow:0 4px 12px #9d9dbd40}.people-avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%}.people-info{flex:1;min-width:0}.people-name{margin:0 0 var(--spacing-xs) 0;font-size:1.125rem;font-weight:600;color:var(--text-dark);line-height:1.4;word-wrap:break-word;overflow-wrap:break-word}.people-role{font-size:.875rem;font-weight:500;color:var(--text-medium);text-transform:capitalize;line-height:1.4}.people-details{display:flex;flex-direction:column;gap:var(--spacing-sm);padding-top:var(--spacing-sm);border-top:1px solid var(--border-color)}.people-detail-item{display:flex;align-items:center;gap:var(--spacing-sm);color:var(--text-medium);font-size:.875rem;line-height:1.5}.people-detail-item .material-icons{font-size:1.125rem;color:var(--primary);opacity:.9;flex-shrink:0}.people-detail-item a{color:var(--text-medium);text-decoration:none;transition:color .2s ease;word-break:break-word}.people-detail-item a:hover{color:var(--primary);text-decoration:underline}.email-wrapper{display:flex;align-items:center;gap:var(--spacing-xs);flex:1;min-width:0}.email-wrapper a{min-width:0}.copy-email-btn{background:none;border:none;padding:4px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--text-medium);opacity:.7;transition:all .2s ease;border-radius:4px;flex-shrink:0;position:relative;overflow:hidden}.copy-email-btn:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:var(--primary);opacity:.3;transform:translate(-50%,-50%);transition:width .3s ease,height .3s ease,opacity .3s ease}.copy-email-btn:hover{opacity:1;color:var(--primary);background:var(--primary-lighter)}.copy-email-btn:active{transform:scale(.9)}.copy-email-btn:active:before{width:100px;height:100px;opacity:0}.copy-email-btn .material-icons{font-size:1rem;line-height:1;position:relative;z-index:1;transition:transform .2s ease}.copy-email-btn:active .material-icons{transform:scale(1.2)}.empty-state{text-align:center;padding:var(--spacing-xl) 0;color:var(--text-medium)}.empty-state .material-icons{font-size:48px;margin-bottom:var(--spacing-md);opacity:.5}.empty-state p{font-size:1rem;margin:0}@media(max-width:768px){.people-grid{grid-template-columns:1fr;gap:var(--spacing-md);margin-top:var(--spacing-md)}.people-card{padding:var(--spacing-md);border-radius:12px}.people-card:hover{transform:translateY(-2px)}.people-header{gap:var(--spacing-sm);margin-bottom:var(--spacing-sm)}.people-avatar{width:56px;height:56px;font-size:1.25rem;border-width:2px}.people-name{font-size:1rem}.people-role{font-size:.813rem}.people-details{gap:var(--spacing-xs);padding-top:var(--spacing-xs)}.people-detail-item{font-size:.813rem}.people-detail-item .material-icons{font-size:1rem}}.profile-content{max-width:800px;margin:0 auto}.profile-section{background:var(--bg-main);border:1px solid var(--border-color);border-radius:var(--border-radius);padding:var(--spacing-lg);margin-bottom:var(--spacing-lg)}.profile-section h3{margin:0 0 var(--spacing-lg);color:var(--text-dark);font-size:1.125rem}.profile-avatar-container{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.profile-avatar{width:80px;height:80px;background:var(--primary-lighter);color:var(--primary);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:2rem;font-weight:600;position:relative}.profile-avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%;border:2px solid rgba(0,0,0,.1)}.profile-avatar-upload{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xs)}.upload-btn{display:flex;align-items:center;gap:var(--spacing-xs);background:var(--primary);color:#fff;padding:8px 16px;border-radius:var(--border-radius);cursor:pointer;font-size:.875rem;font-weight:500;transition:background-color .2s ease;border:none;text-decoration:none}.upload-btn:hover{background:var(--primary-dark)}.upload-btn svg{width:14px;height:14px}.upload-hint{font-size:.75rem;color:var(--text-medium);margin:0;text-align:center}.profile-details{flex:1}.detail-item{margin-bottom:var(--spacing-md);display:flex;justify-content:space-between;gap:var(--spacing-xs)}.detail-item .label{display:block;color:var(--text-medium);margin-bottom:var(--spacing-xs)}.detail-item .value{color:var(--text-dark);font-weight:500}.detail-item .password-button{color:var(--bg-main);background-color:var(--primary);padding:4px 8px;border-radius:5px;font-size:.875rem;font-weight:500;cursor:pointer;text-decoration:none}.detail-item .password-button:hover{background-color:var(--primary-lighter);color:var(--text-dark)}.settings-form{max-width:400px}.security-options{display:flex;gap:var(--spacing-md)}@media(max-width:768px){.profile-info{flex-direction:column;align-items:center;text-align:center}.profile-details{width:100%;text-align:left}.detail-item{flex-direction:column}.profile-avatar-container{margin-bottom:var(--spacing-md)}.upload-btn{padding:10px 20px;font-size:.9rem}}.guides-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:var(--spacing-lg);margin-top:var(--spacing-lg)}.guide-card{background:var(--bg-main);border:1px solid var(--border-color);border-radius:16px;padding:var(--spacing-lg);transition:transform .3s cubic-bezier(.4,0,.2,1),box-shadow .3s cubic-bezier(.4,0,.2,1),border-color .3s cubic-bezier(.4,0,.2,1);box-shadow:0 1px 3px #0000000d;position:relative;overflow:hidden}.evaluation-card{padding:10px 20px!important}.evaluation-card h3{margin:0;font-size:1rem!important;font-weight:500!important}.guide-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0000001f,0 2px 8px #00000014;border-color:var(--primary)}.guide-header{margin-bottom:var(--spacing-md)}.guide-header h3{margin:var(--spacing-sm) 0 0 0;color:var(--text-dark);font-size:1.25rem}.guide-category{display:inline-block;padding:4px 8px;border:1px solid rgba(0,0,0,.1);background:#0000000d;border-radius:12px;font-size:.6rem;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.guide-category.platform{background:var(--primary-light);color:#fff}.guide-category.research{background:var(--success-light);color:var(--success)}.guide-category.tools{background:var(--warning-light);color:var(--warning)}.guide-category.other{background:var(--info-light);color:var(--info)}.guide-content{color:var(--text-medium);font-size:.875rem;line-height:1.5;margin-bottom:var(--spacing-md);min-height:3em}.guide-meta{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--border-color);font-size:.875rem;color:var(--text-medium)}.report-card:hover{transform:translateY(0);box-shadow:none}.report-card .guide-header h3{font-size:1rem!important;margin:0!important}.report-card .report-list{padding:0!important;gap:.5rem!important}.report-card .report-item{padding:var(--spacing-sm);border:1px solid var(--border-color);border-radius:var(--border-radius-sm);background-color:var(--bg-main)}.report-card .report-item:hover{transform:translateY(0);box-shadow:none;border-color:var(--primary)}.report-card .report-item-header{display:flex;justify-content:space-between;align-items:center}.report-card .report-item-header .btn{padding:5px 10px!important}.report-card .report-item-title{font-weight:500;font-size:.875rem;color:var(--text-dark)}.guide-author,.guide-date,.update-date{display:flex;align-items:center;gap:var(--spacing-xs)}.guide-meta .material-icons{font-size:1rem}.guide-actions{display:flex;justify-content:flex-end;align-items:center;gap:var(--spacing-sm)}.guide-actions .btn{flex-shrink:0;padding:var(--spacing-xs) var(--spacing-md);font-size:.875rem;font-weight:500;border-radius:10px;transition:all .2s ease;white-space:nowrap;width:auto;min-width:auto}.evaluation-card .guide-actions .btn{padding:var(--spacing-xs);width:36px;height:36px;display:flex;align-items:center;justify-content:center;min-width:36px}.evaluation-card .guide-actions .btn .material-icons{margin:0}.guide-actions .view-guide{background-color:var(--primary);color:#fff;box-shadow:0 2px 6px #9d9dbd33}.guide-actions .view-guide:hover{background-color:var(--primary-dark);transform:translateY(-1px);box-shadow:0 4px 12px #9d9dbd4d}.guide-actions .btn-outline:hover{background:var(--bg-light);border-color:var(--primary);transform:translateY(-1px)}.guide-actions .btn-danger:hover{background:var(--error);color:var(--bg-main);border-color:var(--error);transform:translateY(-1px)}.empty-state{text-align:center;padding:var(--spacing-xl);color:var(--text-medium);grid-column:1 / -1}.empty-state .material-icons{font-size:3rem;margin-bottom:var(--spacing-md)}#createGuideForm,#editGuideForm{display:flex;flex-direction:column;gap:var(--spacing-md)}#guideContent{resize:vertical;min-height:200px;font-family:inherit}@media(max-width:768px){.guides-grid{grid-template-columns:1fr;gap:var(--spacing-md);margin-top:var(--spacing-md)}.guide-card{padding:var(--spacing-md);border-radius:12px}.guide-card:hover{transform:translateY(-2px)}.guide-meta{flex-direction:column;align-items:flex-start;gap:var(--spacing-sm)}.guide-actions{flex-direction:row;flex-wrap:wrap;gap:var(--spacing-sm)}.guide-actions .btn{flex:1;min-width:auto}}.guide-meta-top{display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-sm)}.guide-audience{display:inline-flex;align-items:center;gap:var(--spacing-xs);padding:2px 8px;border-radius:12px;font-size:.75rem;font-weight:500}.guide-audience .material-icons{font-size:1rem}.guide-audience.all{background:var(--info-light);color:var(--primary-light);border:1px solid var(--primary)}.guide-audience.group{background:var(--warning-light);color:var(--primary-light);border:1px solid var(--primary)}.guide-footer{display:flex;align-items:center;gap:var(--spacing-xs);color:var(--text-medium);font-size:.875rem;margin-top:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid var(--border-color)}.guide-footer .material-icons{font-size:1rem;color:var(--primary)}.guide-view{background:var(--bg-main);border:1px solid var(--border-color);border-radius:16px;padding:var(--spacing-xl);margin-top:var(--spacing-md);box-shadow:0 1px 3px #0000000d}.guide-view-header{margin-bottom:var(--spacing-lg)}.guide-view-header h2{margin:var(--spacing-sm) 0 0 0;color:var(--text-dark);font-size:1.75rem}.guide-view .guide-actions{margin-top:40px}.breadcrumb{margin-bottom:var(--spacing-md)}.breadcrumb .btn-link{display:inline-flex;align-items:center;gap:var(--spacing-xs);color:var(--primary);padding:var(--spacing-xs) var(--spacing-sm);font-size:.875rem;font-weight:500;background:none;border:none;cursor:pointer;transition:all .2s ease;border-radius:8px;text-decoration:none}.breadcrumb .btn-link .material-icons{font-size:1.125rem;transition:transform .2s ease}.breadcrumb .btn-link:hover{color:var(--primary-dark);background:var(--bg-light);text-decoration:none}.breadcrumb .btn-link:hover .material-icons{transform:translate(-2px)}.guide-dates{display:flex;align-items:center;gap:var(--spacing-md)}.guide-content-full{color:var(--text-dark);line-height:1.6;font-size:1rem}.guide-content-full h1,.guide-content-full h2,.guide-content-full h3,.guide-content-full h4,.guide-content-full h5,.guide-content-full h6{margin:1.5em 0 .5em;color:var(--text-dark);display:flex;align-items:center;gap:var(--spacing-xs)}.guide-content-full h1{font-size:2em}.guide-content-full h2{font-size:1.75em}.guide-content-full h3{font-size:1.5em}.guide-content-full h4{font-size:1.25em}.guide-content-full h5{font-size:1.1em}.guide-content-full h6{font-size:1em}.guide-content-full p{margin-bottom:1em}.guide-content-full ul,.guide-content-full ol{margin:0 0 1em 1.5em}.guide-content-full li{margin-bottom:.5em}.guide-content-full code,.summary-content code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace;font-size:.875rem;background-color:var(--primary-lighter);padding:.2rem .3rem;border-radius:.4rem;box-shadow:0 0 2px #00000080}.guide-content-full pre,.summary-content pre{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace;font-size:.875rem;background-color:var(--primary-lighter);padding:.5rem 1rem;border-radius:.4rem;box-shadow:0 0 2px #00000080;overflow-x:auto;margin:.5em 0}.guide-content-full pre code,.summary-content pre code{background-color:none;padding:0;border-radius:0;box-shadow:none}.guide-content-full blockquote{border-left:4px solid var(--primary);margin:1em 0;padding:.5em 1em;background:var(--surface-color);color:var(--text-medium)}.guide-content-full table{border-collapse:collapse;width:100%;margin:1em 0}.guide-content-full th,.guide-content-full td{border:1px solid var(--border-color);padding:.5em;text-align:left}.guide-content-full th{background:var(--surface-color)}.guide-content-full img{max-width:100%;height:auto;border-radius:var(--border-radius);margin:1em 0}.guide-content-full a{color:#66f;text-decoration:none}.guide-content-full a:hover{text-decoration:underline}.guide-content-full hr{border:none;border-top:1px solid var(--border-color);margin:2em 0}.view-meta{border-bottom:1px solid var(--border-color);padding-bottom:var(--spacing-lg);margin-bottom:var(--spacing-lg);display:flex;justify-content:space-between;align-items:center}@media(max-width:768px){.guide-view{padding:var(--spacing-md);border-radius:12px}.guide-view-header h2{font-size:1.5rem}.view-meta{flex-direction:column;align-items:flex-start;gap:var(--spacing-md)}.guide-dates{flex-direction:column;gap:var(--spacing-sm)}.guide-view .guide-actions{flex-direction:row;flex-wrap:wrap;gap:var(--spacing-sm);margin-top:var(--spacing-lg)}.guide-view .guide-actions .btn{flex:1;min-width:auto}}.jupyter-content p{margin-bottom:10px}.jupyter-content ul{margin-left:20px}.jupyter-content li{margin-bottom:5px}.jupyter-content a{color:#0048ff;text-decoration:none}.jupyter-content a:hover{text-decoration:underline}.evaluations-status{display:flex;align-items:center;gap:10px;border:1px solid #000000;border-radius:5px;padding:10px}.evaluation-text-danger{color:var(--error);font-weight:700;margin-top:10px;max-width:250px}.tools-container{display:flex;flex-direction:column;gap:var(--spacing-xl);margin-top:var(--spacing-lg)}.tools-category{background:var(--bg-main);border:1px solid var(--border-color);border-radius:var(--border-radius);padding:var(--spacing-lg)}.tools-category h3{color:var(--text-dark);font-size:1.25rem;font-weight:600;margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-sm);border-bottom:1px solid var(--border-color)}.tools-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:var(--spacing-md);margin-top:var(--spacing-md)}.tool-item{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md);background:var(--bg-light);border:1px solid var(--border-color);border-radius:var(--border-radius-sm);text-decoration:none;color:var(--text-dark);transition:all .2s ease}.tool-item:hover{background:var(--primary-lighter);border-color:var(--primary);transform:translateY(-2px);box-shadow:0 2px 4px var(--shadow-color)}.tool-item i{font-size:1.25rem;color:var(--primary);width:24px;text-align:center}.tool-item span{font-size:.95rem;font-weight:500}@media(max-width:768px){.tools-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}}.not-found{position:relative;max-width:560px;margin:6vh auto 0;text-align:center;padding:var(--spacing-xl) var(--spacing-md);animation:fadeUp .6s var(--ease-out) backwards}.not-found-code{font-family:var(--font-display);font-size:clamp(6rem,18vw,9rem);font-weight:800;letter-spacing:-.06em;line-height:1;background:linear-gradient(180deg,rgba(var(--primary-rgb),.35),rgba(var(--primary-rgb),.04));-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-user-select:none;user-select:none}.not-found-icon{width:64px;height:64px;display:inline-flex;align-items:center;justify-content:center;margin-top:-2.5rem;margin-bottom:var(--spacing-lg);border-radius:18px;font-size:2rem!important;color:#fff;background:var(--gradient-primary);box-shadow:0 12px 28px -8px rgba(var(--primary-rgb),.8);animation:notFoundFloat 4s var(--ease-in-out) infinite}@keyframes notFoundFloat{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-8px) rotate(-4deg)}}.not-found h1{font-size:1.6rem;font-weight:800;margin-bottom:var(--spacing-xs)}.not-found p{color:var(--text-medium);margin-bottom:var(--spacing-xl)}.not-found-actions{display:flex;gap:var(--spacing-sm);justify-content:center;flex-wrap:wrap}.activity-page{min-height:100vh;padding:var(--spacing-lg);background:linear-gradient(135deg,var(--bg-light) 0%,var(--bg-main) 100%)}.activity-hero{background:linear-gradient(135deg,var(--primary) 0%,var(--primary-dark) 100%);border-radius:20px;padding:var(--spacing-xl) var(--spacing-lg);margin-bottom:var(--spacing-xl);display:flex;justify-content:space-between;align-items:center;position:relative;overflow:hidden;animation:fadeInUp .6s ease-out}.activity-hero:before{content:"";position:absolute;top:-50%;right:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(255,255,255,.1) 0%,transparent 70%);animation:rotate 20s linear infinite}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.hero-content{position:relative;z-index:1;color:#fff}.hero-title{font-size:2.5rem;font-weight:700;margin-bottom:var(--spacing-sm);animation:fadeInLeft .8s ease-out}.hero-subtitle{font-size:1.125rem;opacity:.9;animation:fadeInLeft .8s ease-out .2s both}.hero-stats{position:relative;z-index:1;text-align:center;animation:fadeInRight .8s ease-out}.hero-stat-main{background:#ffffff26;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:16px;padding:var(--spacing-lg);border:1px solid rgba(255,255,255,.2)}.stat-number-animated{font-size:3rem;font-weight:700;color:#fff;margin-bottom:var(--spacing-xs)}.stat-label{font-size:.875rem;color:#ffffffe6;text-transform:uppercase;letter-spacing:1px}.activity-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--spacing-lg);margin-bottom:var(--spacing-xl)}.activity-stat-card{background:var(--bg-main);border-radius:16px;padding:var(--spacing-lg);position:relative;overflow:hidden;border:1px solid var(--border-color);transition:all .3s cubic-bezier(.4,0,.2,1);animation:slideInUp .6s ease-out both;cursor:pointer}.activity-stat-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--primary),var(--primary-dark));transform:scaleX(0);transform-origin:left;transition:transform .3s ease}.activity-stat-card:hover:before{transform:scaleX(1)}.activity-stat-card:hover{transform:translateY(-8px);box-shadow:0 12px 24px #00000026;border-color:var(--primary)}.stat-card-bg{position:absolute;inset:0;opacity:0;background:linear-gradient(135deg,var(--primary-lighter) 0%,transparent 100%);transition:opacity .3s ease}.activity-stat-card:hover .stat-card-bg{opacity:1}.stat-card-content{position:relative;z-index:1;display:flex;align-items:flex-start;gap:var(--spacing-md)}.stat-icon-wrapper{background:var(--primary-lighter);border-radius:12px;padding:var(--spacing-md);display:flex;align-items:center;justify-content:center;transition:all .3s ease}.activity-stat-card:hover .stat-icon-wrapper{background:var(--primary);transform:scale(1.1)}.stat-icon{color:var(--primary);transition:all .3s ease}.activity-stat-card:hover .stat-icon{color:#fff}.stat-info{flex:1}.stat-value-animated{font-size:2rem;font-weight:700;color:var(--text-dark);margin-bottom:var(--spacing-xs);animation:countUp 1s ease-out}.stat-title{font-size:1rem;font-weight:600;color:var(--text-dark);margin-bottom:var(--spacing-xs)}.stat-description{font-size:.875rem;color:var(--text-medium);line-height:1.4}.badges-section{margin-bottom:var(--spacing-xl)}.section-header-animated{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg);animation:fadeInUp .6s ease-out}.section-title{font-size:1.5rem;font-weight:700;color:var(--text-dark);margin:0}.badge-count-badge{background:var(--primary);color:#fff;padding:6px 16px;border-radius:20px;font-size:.875rem;font-weight:600;animation:pulse 2s ease-in-out infinite}.badges-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--spacing-md)}.badge-card-animated{background:var(--bg-main);border:2px solid var(--border-color);border-radius:16px;padding:var(--spacing-lg);display:flex;align-items:center;gap:var(--spacing-md);position:relative;overflow:hidden;transition:all .3s cubic-bezier(.4,0,.2,1);animation:slideInUp .6s ease-out both;cursor:pointer}.badge-glow{position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle,var(--primary-lighter) 0%,transparent 70%);opacity:0;transition:opacity .3s ease}.badge-card-animated:hover .badge-glow{opacity:.3;animation:rotate 3s linear infinite}.badge-card-animated:hover{transform:translateY(-6px) scale(1.02);box-shadow:0 12px 24px #00000026;border-color:var(--primary)}.badge-icon-wrapper{background:linear-gradient(135deg,var(--primary-lighter) 0%,var(--primary) 100%);border-radius:12px;padding:var(--spacing-md);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .3s ease;position:relative;z-index:1}.badge-card-animated:hover .badge-icon-wrapper{transform:scale(1.15);box-shadow:0 8px 16px #0003}.badge-icon{color:#fff;transition:all .3s ease}.badge-info{flex:1;position:relative;z-index:1}.badge-name{font-size:1.125rem;font-weight:600;color:var(--text-dark);margin-bottom:4px}.badge-description{font-size:.875rem;color:var(--text-medium);line-height:1.4}.leaderboard-section{margin-bottom:var(--spacing-xl)}.leaderboard-subtitle{font-size:.875rem;color:var(--text-medium);font-weight:400}.leaderboard-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.leaderboard-item-animated{background:var(--bg-main);border:1px solid var(--border-color);border-radius:12px;padding:var(--spacing-md);display:flex;align-items:center;gap:var(--spacing-md);transition:all .3s ease;animation:slideInLeft .5s ease-out both;position:relative;overflow:hidden}.leaderboard-item-animated:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:linear-gradient(180deg,var(--primary),var(--primary-dark));transform:scaleY(0);transform-origin:top;transition:transform .3s ease}.leaderboard-item-animated:hover:before{transform:scaleY(1)}.leaderboard-item-animated:hover{transform:translate(8px);box-shadow:0 4px 12px #0000001a;border-color:var(--primary)}.leaderboard-item-animated.current-user{background:linear-gradient(135deg,var(--primary-lighter) 0%,var(--bg-main) 100%);border-color:var(--primary);box-shadow:0 2px 8px #0000000d}.leaderboard-item-animated.current-user:before{transform:scaleY(1);background:linear-gradient(180deg,var(--primary),var(--primary-dark))}.leaderboard-rank{min-width:50px;display:flex;align-items:center;justify-content:center;font-size:1.25rem;font-weight:700;color:var(--text-dark)}.rank-icon{display:flex;align-items:center;justify-content:center;transition:all .3s ease}.rank-icon.rank-first{color:gold;filter:drop-shadow(0 2px 4px rgba(255,215,0,.3))}.rank-icon.rank-second{color:silver;filter:drop-shadow(0 2px 4px rgba(192,192,192,.3))}.rank-icon.rank-third{color:#cd7f32;filter:drop-shadow(0 2px 4px rgba(205,127,50,.3))}.rank-number-text{font-size:1.125rem;font-weight:600;color:var(--text-medium)}.leaderboard-avatar-wrapper{flex-shrink:0}.leaderboard-avatar{width:56px;height:56px;border-radius:50%;object-fit:cover;border:3px solid var(--border-color);transition:all .3s ease}.leaderboard-item-animated:hover .leaderboard-avatar{border-color:var(--primary);transform:scale(1.05)}.leaderboard-avatar.initials{display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--primary),var(--primary-dark));color:#fff;font-size:1.5rem;font-weight:600;text-transform:uppercase;border:3px solid var(--border-color)}.leaderboard-item-animated:hover .leaderboard-avatar.initials{border-color:var(--primary);box-shadow:0 4px 12px #00000026}.leaderboard-info{flex:1;min-width:0}.leaderboard-name{font-size:1.125rem;font-weight:600;color:var(--text-dark);margin-bottom:var(--spacing-xs);display:flex;align-items:center;gap:var(--spacing-xs)}.you-badge{background:var(--primary);color:#fff;padding:2px 8px;border-radius:12px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.leaderboard-stats{display:flex;flex-wrap:wrap;gap:var(--spacing-md);align-items:center}.leaderboard-stats .stat-item{display:flex;align-items:center;gap:4px;font-size:.875rem;color:var(--text-medium)}.leaderboard-stats .stat-icon-small{color:var(--primary);flex-shrink:0}.points-history-section{margin-bottom:var(--spacing-xl)}.points-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:var(--spacing-sm)}.points-item-animated{background:var(--bg-main);border:1px solid var(--border-color);border-left:4px solid var(--success);border-radius:12px;padding:var(--spacing-md);display:flex;align-items:center;gap:var(--spacing-md);transition:all .3s ease;animation:slideInRight .5s ease-out both;position:relative;overflow:hidden}.points-item-animated:hover:before{transform:scaleY(1)}.points-item-animated:hover{transform:translate(8px);box-shadow:0 4px 12px #0000001a;border-left-color:var(--success)}.points-amount-wrapper{display:flex;align-items:center;gap:var(--spacing-xs);min-width:100px}.points-amount{font-size:1.5rem;font-weight:700;text-align:right;animation:bounceIn .6s ease-out}.points-amount.positive{color:var(--success)}.points-icon{display:flex;align-items:center;justify-content:center;color:var(--success);animation:sparkle 1.5s ease-in-out infinite}.points-icon-svg{color:var(--success)}.points-details{flex:1}.points-reason{font-size:.9375rem;font-weight:500;color:var(--text-dark);margin-bottom:4px}.points-date{font-size:.875rem;color:var(--text-medium);display:flex;align-items:center;gap:4px}.activity-section{margin-top:var(--spacing-xl)}.activity-feed{display:flex;flex-direction:column;gap:var(--spacing-md);position:relative;padding-left:var(--spacing-lg)}.activity-feed:before{content:"";position:absolute;left:12px;top:0;bottom:0;width:2px;background:linear-gradient(to bottom,var(--primary),transparent)}.user-activity-item-animated{background:var(--bg-main);border:1px solid var(--border-color);border-radius:12px;padding:var(--spacing-md);position:relative;transition:all .3s ease;animation:slideInLeft .5s ease-out both;display:flex;gap:var(--spacing-md)}.user-activity-item-animated:hover{transform:translate(8px);box-shadow:0 4px 12px #0000001a;border-color:var(--primary)}.activity-timeline-dot{position:absolute;left:-24px;top:20px;width:12px;height:12px;background:var(--primary);border-radius:50%;border:3px solid var(--bg-main);box-shadow:0 0 0 2px var(--primary);animation:pulse 2s ease-in-out infinite}.activity-content{flex:1}.user-activity-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-sm);flex-wrap:wrap;gap:var(--spacing-xs)}.user-activity-type{padding:6px 14px;background:var(--primary-lighter);color:var(--primary);border-radius:20px;font-size:.875rem;font-weight:600;transition:all .3s ease}.user-activity-item-animated:hover .user-activity-type{background:var(--primary);color:#fff}.user-activity-date{display:flex;align-items:center;gap:var(--spacing-xs);color:var(--text-medium);font-size:.875rem}.user-activity-date .material-icons{font-size:1rem}.user-activity-message{color:var(--text-dark);line-height:1.6}.empty-state-animated{text-align:center;padding:var(--spacing-xl);color:var(--text-medium);animation:fadeIn .6s ease-out}.empty-icon-wrapper{margin-bottom:var(--spacing-md);display:inline-block;opacity:.5;animation:float 3s ease-in-out infinite}.empty-icon{color:var(--text-medium)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInLeft{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@keyframes fadeInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes slideInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}@keyframes bounceIn{0%{opacity:0;transform:scale(.3)}50%{opacity:1;transform:scale(1.05)}70%{transform:scale(.9)}to{transform:scale(1)}}@keyframes countUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.05)}}@keyframes sparkle{0%,to{opacity:1;transform:scale(1) rotate(0)}50%{opacity:.7;transform:scale(1.2) rotate(180deg)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@media(max-width:768px){.activity-hero{flex-direction:column;text-align:center;gap:var(--spacing-lg)}.hero-title{font-size:2rem}.activity-stats-grid,.badges-grid{grid-template-columns:1fr}.activity-feed{padding-left:var(--spacing-md)}.activity-timeline-dot{left:-16px}.leaderboard-rank{min-width:40px;font-size:1rem}.leaderboard-avatar,.leaderboard-avatar.initials{width:48px;height:48px;font-size:1.25rem}.leaderboard-name{font-size:1rem}.leaderboard-stats{gap:var(--spacing-sm)}.leaderboard-stats .stat-item{font-size:.813rem}}.calendar-view{padding:20px}.calendar-header{display:flex;justify-content:flex-end;align-items:center;margin-top:var(--spacing-md)}.calendar-nav{display:flex;align-items:center;gap:var(--spacing-md)}.calendar-nav h2{margin:0;min-width:200px;text-align:center;font-size:1.5rem;color:var(--text-dark)}.calendar-grid{background:var(--bg-main);border:1px solid var(--border-color);border-radius:16px;box-shadow:0 1px 3px #0000000d;overflow:hidden;margin-top:var(--spacing-lg)}.calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr);background:var(--bg-light);border-bottom:1px solid var(--border-color);padding:var(--spacing-sm) 0;gap:0}.calendar-weekdays div{text-align:center;font-weight:600;color:var(--text-medium);font-size:.875rem;box-sizing:border-box;width:100%;padding:0;margin:0;border-right:1px solid var(--border-color)}.calendar-weekdays div:last-child{border-right:none}.calendar-days{display:grid;grid-template-columns:repeat(7,1fr);gap:0;background:var(--border-color)}.calendar-day{background:var(--bg-main);padding:var(--spacing-xs);min-height:100px;position:relative;border-right:1px solid var(--border-color);border-bottom:1px solid var(--border-color);transition:background-color .2s ease;box-sizing:border-box;width:100%;min-width:0;max-width:100%;overflow:hidden}.calendar-day:nth-child(7n){border-right:none}.calendar-day:hover{background:var(--bg-light)}.calendar-day.empty{background:var(--bg-light);opacity:.5}.day-number{font-size:.875rem;color:var(--text-dark);font-weight:500;margin-bottom:var(--spacing-xs)}.day-events{display:flex;flex-direction:column;gap:2px;width:100%;min-width:0}.calendar-event{background:var(--primary-lighter);border-left:3px solid var(--primary);padding:4px 8px;border-radius:4px;cursor:pointer;font-size:.75rem;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;transition:background-color .2s ease,transform .2s ease;width:100%;min-width:0;max-width:100%;box-sizing:border-box;display:flex;align-items:center}.calendar-event:hover{background:var(--primary-light);transform:translate(2px)}.event-time{font-size:.7rem;color:var(--text-medium);margin-right:4px;font-weight:500;flex-shrink:0}.event-title{font-weight:500;color:var(--text-dark);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;flex:1}#eventModal{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;z-index:1000}#eventModal .modal-content{position:relative;background:#fff;margin:10% auto;padding:20px;width:90%;max-width:500px;border-radius:8px;box-shadow:0 2px 10px #0000001a}.event-detail-item{display:flex;align-items:center;gap:10px;margin:10px 0;padding:10px;background:#f8f9fa;border-radius:4px}.event-detail-item .material-icons{color:#2196f3}.event-detail-item a{color:#2196f3;text-decoration:none}.event-detail-item a:hover{text-decoration:underline}@media(max-width:768px){.calendar-view{padding:var(--spacing-sm)}.calendar-header{margin-top:var(--spacing-sm)}.calendar-nav{gap:var(--spacing-sm)}.calendar-nav h2{font-size:1.25rem;min-width:150px}.calendar-grid{border-radius:12px;margin-top:var(--spacing-md)}.calendar-weekdays div{font-size:.75rem;padding:var(--spacing-xs) 0}.calendar-day{min-height:80px;padding:4px}.day-number{font-size:.75rem}.calendar-event{font-size:.65rem;padding:3px 6px}.event-time{font-size:.6rem}}.modal-body p{margin:0 0 10px;font-size:15px;line-height:1.5}.page-header{gap:var(--spacing-md);flex-wrap:wrap;margin-bottom:1.75rem;animation:fadeUp .6s var(--ease-out) backwards}.page-header h2{font-family:var(--font-display);font-size:clamp(1.5rem,2.4vw,1.9rem);font-weight:800;letter-spacing:-.03em;line-height:1.15;color:var(--text-dark);margin-bottom:.3rem}.page-header p.text-medium,.page-header>div>p{font-size:.95rem;color:var(--text-medium)}.content-section,.tools-category{border-radius:var(--border-radius-lg);border-color:var(--border-subtle);box-shadow:var(--shadow-sm);background:var(--bg-main)}.tools-category h3{font-size:1.05rem;font-weight:700;border-bottom-color:var(--border-subtle)}.project-card,.people-card,.guide-card,.meeting-card,.publication-card,.dashboard-meeting-card,.group-card,.application-card,.evaluation-card{border-radius:var(--border-radius-lg);border-color:var(--border-subtle);background:var(--gradient-surface);box-shadow:var(--shadow-sm);transition:transform var(--duration-slow) var(--ease-out),box-shadow var(--duration-slow) var(--ease-out),border-color var(--duration) var(--ease-out)}.project-card:hover,.people-card:hover,.guide-card:hover,.meeting-card:hover,.publication-card:hover,.dashboard-meeting-card:hover,.group-card:hover,.application-card:hover,.evaluation-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:rgba(var(--accent-rgb),.35)}.item-card,.issue-card{border-radius:var(--border-radius);border-color:var(--border-subtle);transition:border-color var(--duration) var(--ease-out),box-shadow var(--duration) var(--ease-out),background-color var(--duration) var(--ease-out)}.item-card:hover,.issue-card:hover{border-color:var(--border-color);box-shadow:var(--shadow-md)}.project-title,.project-card h4,.guide-card h3,.guide-card h4,.people-card h3,.people-card h4{font-family:var(--font-display);letter-spacing:-.02em}.project-description{color:var(--text-medium);line-height:1.6}.dashboard-meeting-icon{border-radius:14px;transition:transform var(--duration-slow) var(--ease-spring),background var(--duration) var(--ease-out),color var(--duration) var(--ease-out),box-shadow var(--duration) var(--ease-out)}.dashboard-meeting-card:hover .dashboard-meeting-icon{background:var(--gradient-primary);transform:scale(1.06) rotate(-4deg);box-shadow:0 8px 18px -6px rgba(var(--primary-rgb),.8)}.tool-item{background:var(--bg-main);border-color:var(--border-subtle);border-radius:12px;padding:.85rem 1rem;transition:transform var(--duration) var(--ease-out),box-shadow var(--duration) var(--ease-out),border-color var(--duration) var(--ease-out),background-color var(--duration) var(--ease-out)}.tool-item i{width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;font-size:1rem;border-radius:10px;background:var(--primary-lighter);color:var(--primary-dark);transition:transform var(--duration-slow) var(--ease-spring),background var(--duration) var(--ease-out),color var(--duration) var(--ease-out)}.tool-item:hover{background:var(--bg-main);border-color:rgba(var(--accent-rgb),.35);transform:translateY(-2px);box-shadow:var(--shadow-md)}.tool-item:hover i{background:var(--gradient-primary);color:#fff;transform:scale(1.08) rotate(-6deg)}.status-badge{display:inline-flex;align-items:center;gap:.4rem;padding:.28rem .7rem;border-radius:var(--border-radius-pill);font-size:.72rem;font-weight:600;letter-spacing:.01em;border-color:transparent}.status-badge:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;box-shadow:0 0 0 3px color-mix(in srgb,currentColor 20%,transparent)}.status-badge.active:before{animation:pulseDot 2s var(--ease-in-out) infinite}@keyframes pulseDot{0%,to{box-shadow:0 0 0 3px color-mix(in srgb,currentColor 20%,transparent)}50%{box-shadow:0 0 0 5px color-mix(in srgb,currentColor 8%,transparent)}}.header-badges .group-badge,.header-badges .contributor-count-badge,.header-badges .publication-count-badge,.header-badges .project-type,.project-type-badge{padding:.28rem .7rem;border-radius:var(--border-radius-pill);font-size:.72rem;border-color:var(--border-subtle);background:var(--bg-light)}.project-tabs{border-bottom:1px solid var(--border-subtle)}.project-tab{border-bottom:none;border-radius:10px 10px 0 0;font-weight:600;transition:color var(--duration) var(--ease-out),background-color var(--duration) var(--ease-out)}.project-tab:after{content:"";position:absolute;left:14px;right:14px;bottom:0;height:3px;border-radius:3px 3px 0 0;background:var(--gradient-accent);transform:scaleX(0);transition:transform var(--duration-slow) var(--ease-out)}.project-tab:hover{color:var(--text-dark);background:rgba(var(--primary-rgb),.06)}.project-tab.active{color:var(--primary-darker);background:transparent}.project-tab.active:after{transform:scaleX(1)}@media(max-width:768px){.project-tab.active:after{display:block}}.filter-buttons{background:rgba(var(--primary-rgb),.1);border:1px solid var(--border-subtle);padding:4px;border-radius:12px}.filter-buttons button{border-radius:9px;padding:.5rem 1rem;transition:background-color var(--duration) var(--ease-out),color var(--duration) var(--ease-out),box-shadow var(--duration) var(--ease-out)}.filter-buttons button:hover:not(.active){color:var(--text-dark);background:#fff9}.filter-buttons button.active,.filter-buttons button.active:hover{background:var(--bg-main);color:var(--primary-darker);box-shadow:var(--shadow-sm),0 0 0 1px var(--border-subtle);transform:none}:root{accent-color:rgb(var(--accent-rgb))}.form-control{width:100%;font-family:inherit}.form-group label{font-weight:600;font-size:.84rem;color:var(--text-dark)}input::placeholder,textarea::placeholder{color:var(--text-light)}.empty-state{border:1.5px dashed var(--border-color);border-radius:var(--border-radius-lg);background:radial-gradient(400px 160px at 50% 0%,rgba(var(--accent-rgb),.06),transparent 70%),var(--bg-main);animation:scaleIn .5s var(--ease-out) backwards}.empty-state>.material-icons{width:64px;height:64px;display:inline-flex;align-items:center;justify-content:center;font-size:1.9rem!important;border-radius:18px;background:var(--primary-lighter);color:var(--primary-dark)!important;margin-bottom:.75rem}.overview-container>*,.projects-grid>*,.guides-grid>*,.people-grid>*,.members-grid>*,.tools-grid>*,.tools-container>*,.dashboard-meetings-list>*,.meetings-list>*,.items-list>*,.stats-grid>*,.groups-grid>*,.applications-grid>*{animation:fadeUp .55s var(--ease-out) backwards}:is(.overview-container,.projects-grid,.guides-grid,.people-grid,.members-grid,.tools-grid,.tools-container,.dashboard-meetings-list,.meetings-list,.items-list,.stats-grid,.groups-grid,.applications-grid)>:nth-child(1){animation-delay:40ms}:is(.overview-container,.projects-grid,.guides-grid,.people-grid,.members-grid,.tools-grid,.tools-container,.dashboard-meetings-list,.meetings-list,.items-list,.stats-grid,.groups-grid,.applications-grid)>:nth-child(2){animation-delay:80ms}:is(.overview-container,.projects-grid,.guides-grid,.people-grid,.members-grid,.tools-grid,.tools-container,.dashboard-meetings-list,.meetings-list,.items-list,.stats-grid,.groups-grid,.applications-grid)>:nth-child(3){animation-delay:.12s}:is(.overview-container,.projects-grid,.guides-grid,.people-grid,.members-grid,.tools-grid,.tools-container,.dashboard-meetings-list,.meetings-list,.items-list,.stats-grid,.groups-grid,.applications-grid)>:nth-child(4){animation-delay:.16s}:is(.overview-container,.projects-grid,.guides-grid,.people-grid,.members-grid,.tools-grid,.tools-container,.dashboard-meetings-list,.meetings-list,.items-list,.stats-grid,.groups-grid,.applications-grid)>:nth-child(5){animation-delay:.2s}:is(.overview-container,.projects-grid,.guides-grid,.people-grid,.members-grid,.tools-grid,.tools-container,.dashboard-meetings-list,.meetings-list,.items-list,.stats-grid,.groups-grid,.applications-grid)>:nth-child(6){animation-delay:.24s}:is(.overview-container,.projects-grid,.guides-grid,.people-grid,.members-grid,.tools-grid,.tools-container,.dashboard-meetings-list,.meetings-list,.items-list,.stats-grid,.groups-grid,.applications-grid)>:nth-child(7){animation-delay:.28s}:is(.overview-container,.projects-grid,.guides-grid,.people-grid,.members-grid,.tools-grid,.tools-container,.dashboard-meetings-list,.meetings-list,.items-list,.stats-grid,.groups-grid,.applications-grid)>:nth-child(8){animation-delay:.32s}:is(.overview-container,.projects-grid,.guides-grid,.people-grid,.members-grid,.tools-grid,.tools-container,.dashboard-meetings-list,.meetings-list,.items-list,.stats-grid,.groups-grid,.applications-grid)>:nth-child(n+9){animation-delay:.36s}.dashboard-container>.section,.dashboard-container>.content-section{animation:fadeUp .6s var(--ease-out) .12s backwards}.dashboard-container>.section+.section{animation-delay:.2s}@media(hover:none){.project-card:hover,.people-card:hover,.guide-card:hover,.meeting-card:hover,.publication-card:hover,.dashboard-meeting-card:hover,.group-card:hover,.application-card:hover,.evaluation-card:hover,.stat-card:hover,.tool-item:hover{transform:none}}
