/* SimpleDir Responsive Styles */
.simpledir-container {
  width: 100%;
  overflow-x: auto;
  margin: 1em 0;
}

.simpledir-table {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
  font-size: 0.9em;
  line-height: 1.4;
}

.simpledir-table caption {
  font-weight: bold;
  font-size: 1.1em;
  padding: 0.5em 0;
  text-align: left;
  color: #333;
}

.simpledir-table th {
  background-color: #f5f5f5;
  font-weight: bold;
  text-align: left;
  padding: 0.75em 0.5em;
  border-bottom: 2px solid #ddd;
}

.simpledir-table td {
  padding: 0.75em 0.5em;
  border-bottom: 1px solid #eee;
  vertical-align: middle;
}

.simpledir-table tr.alt td {
  background-color: #f9f9f9;
}

.simpledir-table tr:hover td {
  background-color: #f0f8ff;
}

.simpledir-table tfoot td {
  background-color: #f5f5f5;
  font-style: italic;
  text-align: center;
  border-top: 2px solid #ddd;
  color: #666;
}

.simpledir-table a {
  text-decoration: none;
  color: #0066cc;
  display: flex;
  align-items: center;
  gap: 0.5em;
}

.simpledir-table a:hover {
  text-decoration: underline;
  color: #004499;
}

.simpledir-table img {
  vertical-align: middle;
  flex-shrink: 0;
  margin: 0;
}

/* Column specific styles */
.col-name {
  width: 60%;
  min-width: 200px;
}

.col-date {
  width: 25%;
  min-width: 150px;
  white-space: nowrap;
}

.col-size {
  width: 15%;
  min-width: 100px;
  text-align: right;
}

/* Responsive design for mobile */
@media screen and (max-width: 768px) {
  .simpledir-table {
    font-size: 0.85em;
  }
  
  .simpledir-table thead {
    display: none;
  }
  
  .simpledir-table tbody, 
  .simpledir-table tr, 
  .simpledir-table td {
    display: block;
    width: 100%;
  }
  
  .simpledir-table tr {
    margin-bottom: 1em;
    border: 1px solid #ddd;
    border-radius: 4px;
    padding: 0.5em;
  }
  
  .simpledir-table td {
    border: none;
    padding: 0.5em;
    position: relative;
    padding-left: 45%;
  }
  
  .simpledir-table td:before {
    content: attr(data-label);
    position: absolute;
    left: 0.5em;
    width: 40%;
    font-weight: bold;
    color: #666;
  }
  
  .simpledir-table .col-name,
  .simpledir-table .col-date,
  .simpledir-table .col-size {
    width: 100%;
    min-width: auto;
    text-align: left;
  }
  
  .simpledir-table .col-size {
    text-align: left;
  }
  
  .simpledir-table tfoot td {
    padding-left: 0.5em;
    text-align: center;
  }
  
  .simpledir-table tfoot td:before {
    display: none;
  }
}

/* Print styles */
@media print {
  .simpledir-table {
    font-size: 10pt;
  }
  
  .simpledir-table a {
    color: #000;
    text-decoration: none;
  }
  
  .simpledir-table img {
    display: none;
  }
}