.hub-header{z-index:50;width:100%;height:64px;padding:0 var(--hub-gutter);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--hub-outline-variant);background:#f7fbf2cc;justify-content:space-between;align-items:center;display:flex}.hub-dark .hub-header{background:#1a1c16d9}.hub-header-logo{flex-shrink:0;align-items:baseline;gap:6px;display:flex}.hub-header-logo-mark{color:var(--hub-primary);letter-spacing:-.02em;font-size:1.5rem;font-weight:900}.hub-header-logo-text{color:var(--hub-on-surface-variant);text-transform:uppercase;letter-spacing:.12em;font-size:.875rem;font-weight:500}.hub-header-search{flex:0 420px;position:relative}.hub-header-search .search-icon{color:var(--hub-outline);pointer-events:none;font-size:1.1rem;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.hub-header-search input{border-radius:var(--hub-radius-full);border:1px solid var(--hub-outline-variant);background:var(--hub-surface-container-low);width:100%;font-size:var(--hub-font-body);color:var(--hub-on-surface);transition:border-color var(--hub-transition), box-shadow var(--hub-transition);outline:none;padding:8px 16px 8px 40px}.hub-header-search input:focus{border-color:var(--hub-primary);box-shadow:0 0 0 3px #4a7a121f}.hub-search-results{background:var(--hub-surface);border:1px solid var(--hub-outline-variant);border-radius:var(--hub-radius);box-shadow:var(--hub-shadow-md);z-index:100;max-height:280px;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto}.hub-search-result-item{cursor:pointer;color:var(--hub-on-surface);transition:background var(--hub-transition);align-items:center;gap:12px;padding:10px 16px;text-decoration:none;display:flex}.hub-search-result-item:hover{background:var(--hub-surface-container)}.hub-search-result-item .material-symbols-outlined{color:var(--hub-primary);font-size:1.25rem}.result-title{font-weight:500;font-size:var(--hub-font-body);margin:0}.result-type{font-size:var(--hub-font-tiny);color:var(--hub-outline);margin:0}.hub-header-actions{flex-shrink:0;align-items:center;gap:4px;display:flex}.hub-header-btn{border-radius:var(--hub-radius-full);cursor:pointer;width:40px;height:40px;color:var(--hub-on-surface-variant);transition:background var(--hub-transition), color var(--hub-transition);background:0 0;border:none;place-items:center;display:grid;position:relative}.hub-header-btn:hover{background:var(--hub-surface-container);color:var(--hub-primary)}.hub-notif-badge{background:var(--hub-error);width:16px;height:16px;color:var(--hub-on-primary);border-radius:50%;place-items:center;font-size:10px;font-weight:700;display:grid;position:absolute;top:4px;right:4px}.hub-header-avatar{border:2px solid var(--hub-outline-variant);background:var(--hub-surface-container);border-radius:50%;place-items:center;width:36px;height:36px;display:grid;overflow:hidden}.hub-header-avatar img{object-fit:cover;width:100%;height:100%}.hub-header-avatar-wrap{position:relative}.hub-profile-dropdown{background:var(--hub-surface);border:1px solid var(--hub-outline-variant);border-radius:var(--hub-radius);box-shadow:var(--hub-shadow-md);z-index:200;min-width:180px;position:absolute;top:calc(100% + 8px);right:0;overflow:hidden}.hub-profile-dropdown-item{font-size:var(--hub-font-body);color:var(--hub-on-surface);cursor:pointer;transition:background var(--hub-transition);align-items:center;gap:10px;padding:10px 16px;font-weight:500;text-decoration:none;display:flex}.hub-profile-dropdown-item:hover{background:var(--hub-surface-container)}.hub-profile-dropdown-item .material-symbols-outlined{font-size:1.15rem}.hub-profile-logout{border-top:1px solid var(--hub-outline-variant)}.hub-profile-logout:hover{color:var(--hub-error);background:var(--hub-error-container)}.hub-header-search-mobile{display:none}@media (width<=768px){.hub-header-search{display:none}.hub-header-search-mobile{display:grid}}.hub-sidebar[data-v-9803ab69]{width:var(--hub-sidebar-width);padding:var(--hub-gutter) var(--hub-stack-md);border-right:1px solid var(--hub-outline-variant);background:var(--hub-surface);flex-direction:column;flex-shrink:0;display:flex;overflow-y:auto}.hub-nav-link[data-v-9803ab69]{border-radius:var(--hub-radius);color:var(--hub-on-surface-variant);font-size:var(--hub-font-body);transition:all var(--hub-transition);justify-content:flex-start;align-items:center;gap:12px;padding:10px 16px;font-weight:500;text-decoration:none;display:flex;position:relative;overflow:hidden}.hub-nav-link[data-v-9803ab69]:before{content:"";border-radius:var(--hub-radius);background:var(--hub-primary);opacity:0;transition:opacity var(--hub-transition);position:absolute;inset:0}.hub-nav-link[data-v-9803ab69]:hover{color:var(--hub-primary)}.hub-nav-link[data-v-9803ab69]:hover:before{opacity:.06}.hub-nav-link.active[data-v-9803ab69]{color:var(--hub-primary);background:color-mix(in srgb, var(--hub-primary) 10%, transparent);font-weight:600}.hub-nav-link .material-symbols-outlined[data-v-9803ab69]{font-size:1.25rem;position:relative}.hub-nav-section-label[data-v-9803ab69]{font-size:var(--hub-font-tiny);color:var(--hub-outline);text-transform:uppercase;letter-spacing:.05em;margin-top:4px;padding:16px 16px 4px;font-weight:600}.hub-nav-spacer[data-v-9803ab69]{flex:1}.nav-badge[data-v-9803ab69]{background:var(--hub-primary);color:#fff;font-size:var(--hub-font-tiny);border-radius:var(--hub-radius-full);text-align:center;min-width:20px;margin-left:auto;padding:1px 7px;font-weight:600}.nav-badge.urgent[data-v-9803ab69]{background:var(--hub-error)}.hub-nav-bottom[data-v-9803ab69]{border-top:1px solid var(--hub-outline-variant);margin-top:8px;padding-top:8px}.hub-nav-logout[data-v-9803ab69]:hover{color:var(--hub-error)}.hub-nav-logout[data-v-9803ab69]:hover:before{background:var(--hub-error);opacity:.06}@media (width<=1024px){.hub-sidebar[data-v-9803ab69]{display:none}}.hub-root{font-family:var(--hub-font);color:var(--hub-on-surface);font-size:var(--hub-font-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--hub-surface-bright);flex-direction:column;height:100vh;line-height:1.25rem;display:flex;overflow:hidden}.hub-root *{box-sizing:border-box}.hub-body{flex:1;display:flex;overflow:hidden}.hub-main{padding:var(--hub-gutter);scroll-behavior:smooth;flex:1;overflow:hidden auto}.hub-main-inner{gap:var(--hub-gutter);flex-direction:column;max-width:960px;margin:0 auto;display:flex}.hub-card{background:var(--hub-surface);border:1px solid var(--hub-outline-variant);border-radius:var(--hub-radius-lg);transition:box-shadow var(--hub-transition)}.hub-card:hover{box-shadow:var(--hub-shadow-sm)}.hub-grid-status,.hub-grid-2{gap:var(--hub-gutter);grid-template-columns:1fr 1fr;display:grid}.hub-section-label{font-size:var(--hub-font-tiny);text-transform:uppercase;letter-spacing:.1em;color:var(--hub-outline);margin:0;font-weight:700}.skeleton-hero{padding:2rem var(--hub-gutter)}.skeleton-title{background:linear-gradient(90deg, var(--hub-surface-container) 25%, var(--hub-surface-container-high) 50%, var(--hub-surface-container) 75%);background-size:200px 100%;border-radius:6px;width:60%;height:28px;margin-bottom:12px;animation:1.5s infinite hub-skeleton-shimmer}.skeleton-subtitle{background:linear-gradient(90deg, var(--hub-surface-container) 25%, var(--hub-surface-container-high) 50%, var(--hub-surface-container) 75%);background-size:200px 100%;border-radius:4px;width:30%;height:14px;animation:1.5s infinite hub-skeleton-shimmer}.skeleton-card{place-items:center;min-height:200px;padding:2rem;display:grid}.skeleton-circle{background:var(--hub-surface-container);border-radius:50%;width:80px;height:80px;animation:2s ease-in-out infinite hub-pulse}.skeleton-bars{flex-direction:column;gap:16px;width:100%;display:flex}.skeleton-bars:before,.skeleton-bars:after{content:"";background:linear-gradient(90deg, var(--hub-surface-container) 25%, var(--hub-surface-container-high) 50%, var(--hub-surface-container) 75%);background-size:200px 100%;border-radius:4px;height:8px;animation:1.5s infinite hub-skeleton-shimmer;display:block}.skeleton-bars:after{width:60%}.hub-error-card{text-align:center;padding:4rem}.hub-error-card .material-symbols-outlined{color:var(--hub-error);margin-bottom:16px;font-size:3rem}.hub-error-card p{font-size:var(--hub-font-h3);color:var(--hub-on-surface);margin:0}.error-help{font-size:var(--hub-font-body)!important;color:var(--hub-outline)!important;margin-top:8px!important}@media (width<=1024px){.hub-grid-status,.hub-grid-2{grid-template-columns:1fr}.hub-main{padding-bottom:calc(var(--hub-gutter) + 70px)}}@media (width<=768px){.hub-main{padding:var(--hub-stack-md)}.hub-main-inner{gap:var(--hub-stack-md)}}
