/* Diseño de Layouts y Paneles - LoyalCardsEc */

/* Layout del Dashboard del Comercio y Admin */
.dashboard-container {
  display: flex;
  min-height: 100vh;
  position: relative;
}

/* Sidebar Moderno */
.sidebar {
  width: 260px;
  background: var(--text-main);
  color: var(--surface-color);
  display: flex;
  flex-direction: column;
  padding: 1.5rem 1rem;
  transition: transform var(--transition-normal);
  z-index: var(--z-sticky);
}

.sidebar-brand {
  font-family: var(--font-headings);
  font-weight: 800;
  font-size: 1.5rem;
  color: var(--surface-color);
  display: flex;
  align-items: center;
  gap: 0.5rem;
  margin-bottom: 2rem;
  padding: 0 0.5rem;
}

.sidebar-menu {
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  flex-grow: 1;
}

.sidebar-item a {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding: 0.75rem 1rem;
  color: #94A3B8;
  font-weight: 500;
  border-radius: var(--radius-md);
  transition: all var(--transition-fast);
}

.sidebar-item a:hover {
  background: rgba(255, 255, 255, 0.06);
  color: #F8FAFC;
}

.sidebar-item.active a {
  background: var(--primary-color) !important;
  color: #FFFFFF !important;
  font-weight: 600;
  box-shadow: 0 4px 12px rgba(79, 70, 229, 0.3);
}

/* Main Content Area */
.main-content {
  flex-grow: 1;
  background-color: var(--bg-color);
  padding: 2rem;
  overflow-y: auto;
}

.top-bar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 2rem;
  background: var(--surface-color);
  padding: 1rem 2rem;
  margin: -2rem -2rem 2rem -2rem;
  border-bottom: 1px solid var(--border-color);
}

/* Auth Layout (Páginas de Login/Registro) */
.auth-layout {
  min-height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 2rem;
  background: radial-gradient(circle at 10% 20%, rgba(79, 70, 229, 0.05) 0%, transparent 40%),
              radial-gradient(circle at 90% 80%, rgba(20, 184, 166, 0.05) 0%, transparent 40%),
              var(--bg-color);
}

.auth-card {
  width: 100%;
  max-width: 460px;
  background: var(--surface-color);
  border: 1px solid var(--border-color);
  border-radius: var(--radius-lg);
  padding: 2.5rem;
  box-shadow: var(--shadow-xl);
}
