/* Dashboard */
.navItems {
display: flex;
flex-direction: row;
justify-content: center; 

margin-bottom: 20px;
margin-top: 5px;
padding: 20px;
border-radius: 15px;

background: linear-gradient(145deg, #f8fafc 0%, #f1f5f9 50%, #e2e8f0 100%);
border: 1px solid #e2e8f0;
box-shadow: 0 4px 15px rgba(0, 0, 0, 0.08), 0 2px 6px rgba(0, 0, 0, 0.05);
transition: all 0.3s ease;
position: relative;
overflow: hidden;
}
.navItems::before {
content: '';
position: absolute;
top: 0;
left: 0;
right: 0;
height: 2px;
background: linear-gradient(90deg, #667eea 0%, #764ba2 50%, #f093fb 100%);
border-radius: 15px 15px 0 0;
opacity: 0;
transition: opacity 0.3s ease;
}
.navItems:hover {
background: linear-gradient(145deg, #ffffff 0%, #f8fafc 100%);
box-shadow: 0 8px 25px rgba(0, 0, 0, 0.12), 0 4px 12px rgba(0, 0, 0, 0.08);
transform: translateY(-2px);
}
.navItems:hover::before {
opacity: 1;
}
/* navItems anchor styling */
.navItems a {
color: #4a5568;
text-decoration: none;
padding: 8px 16px;
border-radius: 8px;
transition: all 0.3s ease;
font-weight: 600; /* Increased from 500 for better visibility */
font-family: "Raleway", sans-serif;
}
.navItems a:hover {
background: linear-gradient(135deg, #667eea 0%, #764ba2 100%) !important;
color: #ffffff !important;
transform: translateY(-1px);
box-shadow: 0 2px 8px rgba(102, 126, 234, 0.3);
}
.navItems a:active,
.navItems a.active {
background: linear-gradient(135deg, #764ba2 0%, #667eea 100%) !important;
color: #ffffff !important;
box-shadow: 0 1px 4px rgba(102, 126, 234, 0.4);
}
.navItems a {
/* barely visible right border line */
border-right: 1px solid #686868;
padding-right: 10px;
padding-left: 10px;
text-decoration: none;
}
.navItems a:last-child {
border-right: none; /* Remove border for the last a element */
}

.sub-nav {
display: none;
flex-direction: row;
justify-content: center;

margin-top: 7px;
margin-bottom: 15px;
padding: 15px;
border-radius: 12px;

background: linear-gradient(145deg, #f8fafc 0%, #f1f5f9 50%, #e2e8f0 100%);
border: 1px solid #e2e8f0;
box-shadow: 0 3px 12px rgba(0, 0, 0, 0.06), 0 1px 4px rgba(0, 0, 0, 0.04);
transition: all 0.3s ease;
position: relative;
overflow: hidden;
}
.sub-nav::before {
content: '';
position: absolute;
top: 0;
left: 0;
right: 0;
height: 2px;
background: linear-gradient(90deg, #667eea 0%, #764ba2 50%, #f093fb 100%);
border-radius: 12px 12px 0 0;
opacity: 0;
transition: opacity 0.3s ease;
}
.sub-nav:hover {
background: linear-gradient(145deg, #ffffff 0%, #f8fafc 100%);
box-shadow: 0 6px 20px rgba(0, 0, 0, 0.1), 0 3px 8px rgba(0, 0, 0, 0.06);
transform: translateY(-1px);
}
.sub-nav:hover::before {
opacity: 1;
}
.sub-nav a {
color: #4a5568;
text-decoration: none;
padding: 6px 12px;
border-radius: 6px;
transition: all 0.3s ease;
font-weight: 600;
font-family: "Raleway", sans-serif;
font-size: 14px;
}
.sub-nav a:hover {
background: linear-gradient(135deg, #667eea 0%, #764ba2 100%) !important;
color: #ffffff !important;
transform: translateY(-1px);
box-shadow: 0 2px 6px rgba(102, 126, 234, 0.25);
}
.sub-nav a:active,
.sub-nav a.active {
background: linear-gradient(135deg, #764ba2 0%, #667eea 100%) !important;
color: #ffffff !important;
box-shadow: 0 1px 3px rgba(102, 126, 234, 0.3);
}
.sub-nav a {
/* barely visible right border line */
border-right: 1px solid #686868;
padding-right: 10px;
padding-left: 10px;
text-decoration: none;
}
.sub-nav a:last-child {
border-right: none; /* Remove border for the last a element */
}


.sub-nav-files {
  display: none;
  flex-direction: row;
  justify-content: center;
  gap: 16px;
  margin-top: 7px;
  padding: 20px 24px;
  border-radius: 16px;
  position: relative;
  overflow: hidden;
  
  /* Modern gradient background with attention-grabbing colors */
  background: linear-gradient(135deg, #fef3c7 0%, #fed7aa 50%, #fde68a 100%);
  border: 2px solid #f59e0b;
  box-shadow: 
    0 4px 15px rgba(245, 158, 11, 0.15),
    0 2px 6px rgba(0, 0, 0, 0.08);
  
  /* Subtle animation to draw attention */
  animation: subtlePulse 3s ease-in-out infinite;
}
/* Animated top border for extra attention */
.sub-nav-files::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 4px;
  background: linear-gradient(90deg, #f59e0b 0%, #d97706 50%, #b45309 100%);
  border-radius: 16px 16px 0 0;
  animation: shimmerAttention 2s linear infinite;
}
/* Interactive hover effects */
.sub-nav-files:hover {
  transform: translateY(-3px);
  box-shadow: 
    0 8px 25px rgba(245, 158, 11, 0.25),
    0 4px 12px rgba(0, 0, 0, 0.12);
  border-color: #d97706;
  background: linear-gradient(135deg, #fef7e6 0%, #fef3c7 50%, #fed7aa 100%);
}
/* Modern anchor styling for files */
.sub-nav-files a {
  background: linear-gradient(135deg, #994711 0%, #ef8a38 100%) !important;
  background-clip: text !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  text-decoration: none;
  padding: 12px 20px;
  border-radius: 12px;
  font-weight: 700;
  font-family: "Raleway", sans-serif;
  font-size: 16px;
  position: relative;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  
  /* Subtle background for better visibility */
  background-color: rgba(255, 255, 255, 0.6);
  backdrop-filter: blur(10px);
  border: 1px solid rgba(245, 158, 11, 0.2);
}
/* Enhanced hover states for anchors */
.anchor-files:hover, 
.anchor-files.pressed {
  background: linear-gradient(135deg, #b45309 0%, #d97706 100%) !important;
  background-clip: text !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-color: rgba(255, 255, 255, 0.9) !important;
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(153, 71, 17, 0.2);
  border-color: rgba(245, 158, 11, 0.4);
}
/* Add icons before text for better UX */
.anchor-files::before {
  font-family: 'Material Icons', 'Material Symbols Outlined';
  margin-right: 8px;
  font-size: 18px;
  vertical-align: middle;
  opacity: 0.8;
}
#reupload-files-a::before {
  content: '↻'; /* Or use material icon: 'refresh' */
}
#better-copies-a::before {
  content: '📋'; /* Or use material icon: 'assignment' */
}
/* Attention-grabbing animations */
@keyframes subtlePulse {
  0%, 100% {
    box-shadow: 
      0 4px 15px rgba(245, 158, 11, 0.15),
      0 2px 6px rgba(0, 0, 0, 0.08);
  }
  50% {
    box-shadow: 
      0 6px 20px rgba(245, 158, 11, 0.25),
      0 3px 8px rgba(0, 0, 0, 0.12);
  }
}
@keyframes shimmerAttention {
  0% {
    background: linear-gradient(90deg, #f59e0b 0%, #d97706 50%, #b45309 100%);
  }
  50% {
    background: linear-gradient(90deg, #d97706 0%, #b45309 50%, #92400e 100%);
  }
  100% {
    background: linear-gradient(90deg, #f59e0b 0%, #d97706 50%, #b45309 100%);
  }
}
/* Urgent indicator for critical actions */
.sub-nav-files.urgent {
  background: linear-gradient(135deg, #fef2f2 0%, #fecaca 50%, #fca5a5 100%);
  border-color: #ef4444;
  animation: urgentPulse 2s ease-in-out infinite;
}
.sub-nav-files.urgent::before {
  background: linear-gradient(90deg, #ef4444 0%, #dc2626 50%, #b91c1c 100%);
}
.sub-nav-files.urgent a {
  background: linear-gradient(135deg, #991b1b 0%, #dc2626 100%) !important;
  background-clip: text !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
}
@keyframes urgentPulse {
  0%, 100% {
    box-shadow: 
      0 4px 15px rgba(239, 68, 68, 0.2),
      0 2px 6px rgba(0, 0, 0, 0.08);
  }
  50% {
    box-shadow: 
      0 8px 25px rgba(239, 68, 68, 0.35),
      0 4px 12px rgba(0, 0, 0, 0.15);
  }
}
/* Responsive design */
@media (max-width: 768px) {
  .sub-nav-files {
    flex-direction: column;
    gap: 12px;
    padding: 16px 20px;
    border-radius: 12px;
  }
  
  .anchor-files {
    padding: 10px 16px;
    font-size: 15px;
    text-align: center;
  }
  
  .anchor-files::before {
    font-size: 16px;
    margin-right: 6px;
  }
}
@media (max-width: 480px) {
  .sub-nav-files {
    padding: 12px 16px;
    gap: 8px;
    border-radius: 10px;
  }
  
  .anchor-files {
    padding: 8px 12px;
    font-size: 14px;
  }
  
  .globalSearchInput {
    width: calc(100% - 32px) !important;
    max-width: none !important;
    font-size: 13px !important;
    padding: 12px 16px !important;
    margin: 0 16px 16px 16px !important;
    border-radius: 8px !important;
    box-sizing: border-box !important;
    /* Prevent zoom on iOS */
    -webkit-text-size-adjust: 100% !important;
    touch-action: manipulation !important;
  }
}
/* Loading state */
.sub-nav-files.loading {
  opacity: 0.7;
  pointer-events: none;
}
.sub-nav-files.loading::after {
  content: '';
  position: absolute;
  top: 50%;
  right: 16px;
  width: 20px;
  height: 20px;
  border: 2px solid #f59e0b;
  border-top: 2px solid transparent;
  border-radius: 50%;
  animation: spin 1s linear infinite;
  transform: translateY(-50%);
}
@keyframes spin {
  0% { transform: translateY(-50%) rotate(0deg); }
  100% { transform: translateY(-50%) rotate(360deg); }
}
/* Success state after action completion */
.sub-nav-files.success {
  background: linear-gradient(135deg, #dcfce7 0%, #bbf7d0 50%, #86efac 100%);
  border-color: #10b981;
}
.sub-nav-files.success::before {
  background: linear-gradient(90deg, #10b981 0%, #059669 50%, #047857 100%);
}
.sub-nav-files.success a {
  background: linear-gradient(135deg, #047857 0%, #059669 100%) !important;
  background-clip: text !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
}
/* Accessibility improvements */
.sub-nav-files:focus-within {
  outline: 3px solid rgba(245, 158, 11, 0.5);
  outline-offset: 2px;
}
.anchor-files:focus {
  outline: 2px solid #d97706;
  outline-offset: 2px;
  border-radius: 8px;
}


.globalSearchInput {
/* responsive width */
width: 100% !important;
max-width: 400px !important;
/* Responsive font-size */
font-size: 16px !important;
margin-bottom: 20px !important;
}

/* Make placeholder slightly smaller so long text isn't cut off */
.globalSearchInput::placeholder { font-size: 0.9em !important; opacity: 0.75; }
.globalSearchInput::-webkit-input-placeholder { font-size: 0.9em !important; opacity: 0.75; }
.globalSearchInput::-moz-placeholder { font-size: 0.9em !important; opacity: 0.75; }
.globalSearchInput:-ms-input-placeholder { font-size: 0.9em !important; opacity: 0.75; }
.globalSearchInput::-ms-input-placeholder { font-size: 0.9em !important; opacity: 0.75; }

@media (max-width: 520px) {
  .globalSearchInput { font-size: 16px !important; }
  .globalSearchInput::placeholder,
  .globalSearchInput::-webkit-input-placeholder,
  .globalSearchInput::-moz-placeholder,
  .globalSearchInput:-ms-input-placeholder,
  .globalSearchInput::-ms-input-placeholder { font-size: 0.85em !important; }
}

/* Enhanced Status Display */
.statusDisplay {
display: none;
font-size: 16px;
color: #6b7280 !important;
position: relative;
bottom: 25px;
background: linear-gradient(135deg, #f8fafc 0%, #e2e8f0 100%);
padding: 8px 16px;
border-radius: 8px;
border-left: 3px solid #8b5cf6;
box-shadow: 0 2px 6px rgba(0, 0, 0, 0.05);
margin-top: 20px;
}

.activated, .lighted, .turnedOn {
background: linear-gradient(135deg, #667eea 0%, #764ba2 100%) !important;
color: #ffffff !important;
transform: translateY(-1px);
box-shadow: 0 2px 8px rgba(102, 126, 234, 0.3);
}