/* ============================================================================
   ACCESSIBILITY CONTROLS
   ============================================================================
   CSS für die Accessibility-Controls-Box (Font-Size, Dark Mode)
   ============================================================================ */

.a11y-controls-box {
  position: fixed;
  top: 100px;
  right: 20px;
  z-index: 9999;
  background: #ffffff;
  border-radius: 12px;
  padding: 8px;
  box-shadow: 0 4px 16px rgba(0,0,0,0.12);
  display: flex;
  gap: 0;
  border: 1px solid #e0e0e0;
  transition: all 0.3s ease;
}

.a11y-controls-content {
  display: flex;
  gap: 0;
  transition: all 0.3s ease;
}

/* Minimized state */
.a11y-controls-box[data-minimized="true"] {
  width: 50px;
  padding: 4px;
}

.a11y-controls-box[data-minimized="true"] .a11y-controls-content {
  opacity: 0;
  width: 0;
  overflow: hidden;
  pointer-events: none;
}

[data-theme="dark"] .a11y-controls-box {
  background: #2c2c2c;
  border-color: #444;
}

.a11y-btn {
  width: 50px;
  height: 50px;
  border: 1px solid #e0e0e0;
  background: #ffffff;
  color: #333;
  border-radius: 8px;
  cursor: pointer;
  transition: all 0.2s ease;
  font-size: 1.1rem;
  font-weight: 600;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 4px;
}

[data-theme="dark"] .a11y-btn {
  background: #1a1a1a;
  border-color: #444;
  color: #e9ecef;
}

.a11y-btn:hover {
  background: #f8f9fa;
  border-color: #0066cc;
  transform: translateY(-2px);
  box-shadow: 0 2px 8px rgba(0,0,0,0.1);
}

[data-theme="dark"] .a11y-btn:hover {
  background: #333;
  border-color: #0066cc;
}

.a11y-btn:active {
  transform: translateY(0);
}

.a11y-btn i {
  font-size: 1.25rem;
}

/* Minimize Button */
.a11y-minimize-btn {
  width: 42px;
  height: 50px;
  border: 1px solid #e0e0e0;
  background: #ffffff;
  color: #666;
  border-radius: 8px;
  cursor: pointer;
  transition: all 0.2s ease;
  font-size: 1rem;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-left: 4px;
  flex-shrink: 0;
}

[data-theme="dark"] .a11y-minimize-btn {
  background: #1a1a1a;
  border-color: #444;
  color: #999;
}

.a11y-minimize-btn:hover {
  background: #f8f9fa;
  border-color: #0066cc;
  color: #0066cc;
}

[data-theme="dark"] .a11y-minimize-btn:hover {
  background: #333;
  border-color: #0066cc;
  color: #0066cc;
}

.a11y-minimize-btn i {
  font-size: 1rem;
  transition: transform 0.3s ease;
}

/* Rotate icon when minimized */
.a11y-controls-box[data-minimized="true"] .a11y-minimize-btn i {
  transform: rotate(180deg);
}

.a11y-controls-box[data-minimized="true"] .a11y-minimize-btn {
  margin-left: 0;
}

@media (max-width: 768px) {
  .a11y-controls-box {
    top: auto;
    bottom: 20px;
    right: 20px;
  }
}
