/* Klar erkennbare aktive Navigation, unabhängig vom Tailwind-Build. */
.rc-view-tabs {
  display: inline-flex;
  align-items: stretch;
  gap: 0.1875rem;
  padding: 0.1875rem;
  border: 1px solid hsl(var(--border));
  border-radius: 0.625rem;
  background: hsl(var(--muted) / 0.55);
}

.rc-view-tab {
  min-height: 2.25rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.375rem;
  padding: 0.4rem 0.7rem;
  border: 1px solid transparent;
  border-radius: 0.45rem;
  color: hsl(var(--muted-foreground));
  font-size: 0.75rem;
  font-weight: 650;
  line-height: 1;
  white-space: nowrap;
}

.rc-view-tab:hover {
  color: hsl(var(--foreground));
  background: hsl(var(--accent));
}

.rc-view-tab[aria-selected="true"],
[role="tablist"] [role="tab"][aria-selected="true"] {
  color: hsl(var(--primary-foreground));
  background: hsl(var(--primary));
  border-color: hsl(var(--primary));
  box-shadow: 0 1px 3px rgb(0 0 0 / 0.16), inset 0 -2px 0 rgb(0 0 0 / 0.14);
}

.rc-header-label {
  display: none;
}

@media (min-width: 768px) {
  .rc-header-label-new {
    display: inline;
  }
}

@media (min-width: 1024px) {
  .rc-header-label-view {
    display: inline;
  }
}

.sidebar-link.active {
  position: relative;
  color: hsl(var(--foreground));
  background: hsl(var(--accent));
  box-shadow: inset 3px 0 0 hsl(var(--primary));
}

.planner-calendar-day {
  transition: background-color 120ms ease, box-shadow 120ms ease;
}

.planner-calendar-day.is-drop-target,
.planner-calendar-day:has(.sortable-ghost) {
  background: hsl(var(--primary) / 0.1);
  box-shadow: inset 0 0 0 2px hsl(var(--primary));
}

.planner-day-posts {
  min-height: 2.75rem;
}

.planner-drag-handle {
  cursor: grab;
  touch-action: none;
}

.planner-drag-handle:active {
  cursor: grabbing;
}

.sortable-ghost {
  opacity: 0.35;
}

.sortable-drag {
  opacity: 0.95;
  box-shadow: 0 8px 24px rgb(0 0 0 / 0.22);
}

.planner-detail-summary {
  border: 1px solid hsl(var(--border));
  border-radius: 0.75rem;
  background: hsl(var(--muted) / 0.32);
}

@media (max-width: 639px) {
  .rc-view-tab {
    min-width: 2.25rem;
    padding-inline: 0.5rem;
  }

  .planner-calendar-day {
    min-height: 4.5rem;
    padding: 0.25rem;
  }

  .planner-day-posts {
    min-height: 2.25rem;
  }

  .planner-approval-actions,
  .planner-approval-grant {
    width: 100%;
  }

  .planner-approval-actions {
    flex-shrink: 1;
    align-items: stretch;
  }

  .planner-approval-grant {
    justify-content: flex-start;
  }
}
